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
Adding test for token request using refresh_token
Testing client with restricted grant types

@todo Fix handling of grant types to check implicit flow too
Merge branch 'master' into oauth

Conflicts:
	.gitmodules
	application/tests/behat.yml
	application/tests/features/api.attributes.feature
	application/tests/features/api.posts.feature
	application/tests/features/bootstrap/RestContext.php
	application/tests/features/forms/api.groups.feature
	modules/auth
	modules/cache
	modules/database
	modules/image
	modules/orm
	modules/unittest
Update oauth2-server-php library
Add @oauth2Skip hook to feature tests to automatically add auth header

* Creates an auth token during 'BeforeFeature' stage
* Adds the header in 'BeforeScenario' stage
* Add the oauth2Skip tag to all tests except oauth.feature
Fixing errors in tests after merge: change response status to guzzle status