Release v0.5.0 (#98)

diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 90c526d..b544474 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -1,6 +1,14 @@
 Changelog
 =========
 
+v0.5.0
+------
+
+- Added ``app_engine.Signer``. (#97)
+- Added ``crypt.Signer.from_service_account_file``. (#95)
+- Fixed error handling in the oauth2 client. (#96)
+- Fixed the App Engine system tests.
+
 v0.4.0
 ------
 
diff --git a/README.rst b/README.rst
index 8dcfbe8..5767d87 100644
--- a/README.rst
+++ b/README.rst
@@ -7,10 +7,10 @@
 mechanisms to access Google APIs.
 
 .. |build| image:: https://travis-ci.org/GoogleCloudPlatform/google-auth-library-python.svg?branch=master
-   :target: https://travis-ci.org/GoogleCloudPlatform//google-auth-library-python
+   :target: https://travis-ci.org/GoogleCloudPlatform/google-auth-library-python
 .. |docs| image:: https://readthedocs.org/projects/google-auth/badge/?version=latest
    :target: https://google-auth.readthedocs.io/en/latest/
-.. |pypi| image:: https://img.shields.io/pypi/v//google-auth.svg
+.. |pypi| image:: https://img.shields.io/pypi/v/google-auth.svg
    :target: https://pypi.python.org/pypi/google-auth
 
 Installing
diff --git a/docs/conf.py b/docs/conf.py
index 140fe51..b045c8c 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -13,6 +13,8 @@
 # All configuration values have a default; values that are commented out
 # serve to show the default.
 
+import pkg_resources
+
 # If extensions (or modules to document with autodoc) are in another directory,
 # add these directories to sys.path here. If the directory is relative to the
 # documentation root, use os.path.abspath to make it absolute, like shown here.
@@ -64,9 +66,9 @@
 # built documents.
 #
 # The short X.Y version.
-version = '0.4.0'
+version = pkg_resources.get_distribution('google-auth').version
 # The full version, including alpha/beta/rc tags.
-release = '0.4.0'
+release = version
 
 # The language for content autogenerated by Sphinx. Refer to documentation
 # for a list of supported languages.
diff --git a/google/auth/crypt.py b/google/auth/crypt.py
index c425045..6151b29 100644
--- a/google/auth/crypt.py
+++ b/google/auth/crypt.py
@@ -204,7 +204,7 @@
             key_id (str): An optional key id used to identify the private key.
 
         Returns:
-            Signer: The constructed signer.
+            ~google.auth.crypt.Signer: The constructed signer.
 
         Raises:
             ValueError: If the key cannot be parsed as PKCS#1 or PKCS#8 in
@@ -242,7 +242,7 @@
                 format.
 
         Returns:
-            Signer: The constructed signer.
+            ~google.auth.crypt.Signer: The constructed signer.
 
         Raises:
             ValueError: If the info is not in the expected format.
@@ -265,7 +265,7 @@
             filename (str): The path to the service account .json file.
 
         Returns:
-            Signer: The constructed signer.
+            ~google.auth.crypt.Signer: The constructed signer.
         """
         with io.open(filename, 'r', encoding='utf-8') as json_file:
             data = json.load(json_file)
diff --git a/setup.py b/setup.py
index 1baabd8..ca3184f 100644
--- a/setup.py
+++ b/setup.py
@@ -29,7 +29,7 @@
 
 setup(
     name='google-auth',
-    version='0.4.0',
+    version='0.5.0',
     author='Google Cloud Platform',
     author_email='jonwayne+google-auth@google.com',
     description='Google Authentication Library',
diff --git a/tox.ini b/tox.ini
index ad760bd..2347bc1 100644
--- a/tox.ini
+++ b/tox.ini
@@ -70,7 +70,7 @@
 commands = make -C docs html
 
 [testenv:lint]
-basepython = python3.5
+basepython = python3.4
 commands =
   python setup.py check --metadata --restructuredtext --strict
   flake8 \