Support OpenID logins

A patch to enable OpenID login, as described in AlekSi/gonuts.io#23 .  It's not possible to test this patch in the AppEngine SDK, as it substitutes its own login screen regardless of what login method you choose, but it does work in regular AppEngine, provided you enable Federated logins in the app settings screen.

Also, this login method does not return an email address, only a FederatedIdentity field to identify the user.  Not sure if this will be human-readable for all OpenID providers.