Notify client of OAuth2Errors + fix all lint and PEP8 errors

* Properly report non-fatal client errors to the client (like e.g.
  invalid_scope) according to http://tools.ietf.org/html/rfc6749#section-4.1.2.1

The unknown exception handling introduced in 0.7.0 catches all oauthlib's OAuth2Errors as well, which makes it impossible to properly handle e.g. invalid scopes. All fatal client errors will properly be reported to the resource owner, while non-fatal client errors (like invalid scope) will be reported to the client.