oauth2: Let backends extract the code or token themselves

Certain OAuth2-like, but not exactly OAuth2, services do not follow
the standard mechanisms for extracting the access token or auth code
from the redirect URI. They use some non-standard technique to do so.
Let us try to accommodate them by allowing a provider specific hook
which we will invoke only if it is implemented.

https://bugzilla.gnome.org/show_bug.cgi?id=704564
Add Pocket support

Based on the documentation at:
http://getpocket.com/developer/docs/authentication

Icons by Jakub Steiner originally from:
https://raw.github.com/gnome-design-team/gnome-icons/master/web-accounts/tango/src/web-accounts.svg

https://bugzilla.gnome.org/show_bug.cgi?id=704564
examples: Add a Pocket example

This example adds the passed URL to the first Pocket account
listed setup in GOA. Optionally, you can pass a tweet ID which
would be used to show where the user got the URL from.

https://bugzilla.gnome.org/show_bug.cgi?id=704564
oauth2: Make the errors consistent

The colon works better than the previous format for error messages
which can be a few words long.

https://bugzilla.gnome.org/show_bug.cgi?id=704564
doc: Add goa_oauth2_provider_process_redirect_url

https://bugzilla.gnome.org/show_bug.cgi?id=704564