Limit grant flows

For now MyUSA will only support `authorization_code` grant flow.
Initial pass at non-public/sandeboxed client applications

This isn't actually working yet. Specs to test this functionality have been marked pending
Merge branch 'devel' into feature/oauth-sandbox

Conflicts:
	spec/features/doorkeeper/oauth_spec.rb
Implement Private/Sandboxed Apps

- migration to add public field
- added current_user in initialization of Doorkeeper::OAuth::Client
- method on Doorkeeper::OAuth::Client to check validity of the client app for the current user
- override Doorkeeper::OAuth::PreAuthorization#validate_client to check client.valid_for?(...)
Merge branch 'feature/oauth-sandbox' into devel

Conflicts:
	app/controllers/oauth/authorizations_controller.rb
	spec/features/doorkeeper/oauth_spec.rb