Starting OAuth2 module

* Add oauth2-server-php library
* Add basic /oauth controller to prototype authorized and token requests
Better handling of OAuth2_Response: pass params to Kohana_Response
Make user model merge in parent rules
Adding Kohana_OAuth2_Storage_ORM : ORM storage for OAuth2 server
Rename server and storage variables
Minor whitespace change
Adding Oauth tests

* Add api.oauth.feature
* Adding composer.json with mink and goutte requirements
* Add ids to authorize and cancel buttons to enable testing
* RestContext: add step to set api url
* RestContext: add step to set header
* RestContext: rename response status code step to avoid clash with MinkContext
* RestContext: Combine steps to set request properties
* Add MinkContext extension to help compare full url
* FeatureContext: add setupOauth
* Fixing other tests for RestContext change
* Update behat.yml to enable MinkExtension
Set content type header on oauth response
Fix test for  cancelled auth code request
Fix Scenario "Requesting access token with password"

Add test user to fixtures
Refactor Oauth controller: move most calls into Kohana_OAuth2_Server
Reworked OAuth2 tests not to rely on /oauth/debug url

* Block redirection and check Location header instead
* Add extra steps to enable/disable redirection in Mink
* Add steps to check location header through Mink
RestContext: better grammer by allowing 'an' and 'a', trim query string
Add basic oauth access check to API

* Update tests for better testing of oauth on resource requests
* Remove 'basic' scope - renamed to 'api'
* Set scope required for api/forms/posts calls
* Override HTTP_Exception_401 to return a response body