diff --git a/FAQ b/FAQ
deleted file mode 100644
index dc736f2..0000000
--- a/FAQ
+++ /dev/null
@@ -1,8 +0,0 @@
-Frequently asked questions?
-
-
-Q: How do I work out the arguments and methods that are available for a particular API?
-A: http://api-python-client-doc.appspot.com/ has dynamically generated
-   documentation for all the APIs supported by this library.
-
-
diff --git a/FAQ.md b/FAQ.md
new file mode 100644
index 0000000..0386b7a
--- /dev/null
+++ b/FAQ.md
@@ -0,0 +1,5 @@
+#Frequently Asked Questions (FAQ)
+
+
+##How do I work out the arguments and methods that are available for a particular API?
+[Dynamically generated documentation](http://api-python-client-doc.appspot.com/) is available for all the APIs supported by this library.
\ No newline at end of file
diff --git a/LICENSE b/LICENSE
index d223c5e..514ff3b 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,4 @@
- Copyright (C) 2010-2012 Google Inc.
+ Copyright (C) 2010-2014 Google Inc.
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
diff --git a/README.md b/README.md
index f54a3cb..7d5906f 100644
--- a/README.md
+++ b/README.md
@@ -1,43 +1,30 @@
-This is python client library for Google's discovery based APIs.
-
-[Full documentation](http://google.github.io/google-api-python-client)
+#About
+This is the Python client library for Google's discovery based APIs. To get started, please see the [full documentation for this library](http://google.github.io/google-api-python-client).
 
 
-Installation
-============
-
+#Installation
 To install, simply use `pip` or `easy_install`:
 
+```bash
     $ pip install --upgrade google-api-python-client
-
+```
 or
-
+```bash
     $ easy_install --upgrade google-api-python-client
+```
 
-See the
-[Developers Guide](https://developers.google.com/api-client-library/python/start/get_started)
-for more detailed instructions and documentation.
+See the [Developers Guide](https://developers.google.com/api-client-library/python/start/get_started) for more detailed instructions and additional documentation.
 
-Third Party Libraries
-=====================
-
-These libraries will be installed when you install the client library:
-
+#Third Party Libraries
+The following libraries will be installed when you install the client library:
 * http://code.google.com/p/httplib2
 * http://code.google.com/p/uri-templates
 
 Depending on your version of Python, these libraries may also be installed:
-
 * http://pypi.python.org/pypi/simplejson/
 
 For development you will also need:
-
 * http://pythonpaste.org/webtest/
 
-Contributing
-============
-
-Please see the
-[contributing page](http://google.github.io/google-api-python-client/contributing.html)
-for more information. In particular, we love pull requests -- but please make
-sure to sign the contributor license agreement.
+#Contributing
+Please see the [contributing page](http://google.github.io/google-api-python-client/contributing.html) for more information. In particular, we love pull requests -- but please make sure to sign the contributor license agreement.
\ No newline at end of file
