merge --squash persona branch to take care of a false merge commit in
the basic_auth branch that persona is forked from

Conflicts:
	mediagoblin/templates/mediagoblin/auth/login.html
	mediagoblin/templates/mediagoblin/auth/register.html
	mediagoblin/templates/mediagoblin/edit/edit_account.html

These are commit messages from the squashed persona stuff:

 - added tests and fixed minor errors
 - fixed a redirect loop when only persona is enabled and accessing /auth/login
 - moved persona.js to plugin's static dir
 - fixes for add/remove persona emails
 - add and remove personas
 - working with multiple plugins
 - working version
 - switched to hidden form instead of ajax
 - beginings
moved persona template stuff to use template_hooks
made it so that the create account button works with only persona enabled
basic_auth documentation
added openid docs
added basic_auth and openid docs to index and link them together
added docs for the persona plugin
typo
added docs explaining the authentication hooks
Moves json_response into tools/json.py
Moves json_response into tools/json.py
Working client registration
Adds more support to begin to deal with updates
Adds update ability
Client registration now supports application/x-www-form-urlencoded now
Adds the docs for client registration
Adds oauth support up until authorization
Adds more support for oauth - access_token & decorators still to do
Finishes most of oauth, just decorator to complete
Cleans up some of the OAuth code