Marshal the OAuth2 Request from the ZF2 request

- Extracted the method getOAuth2Request(); marshals all values necessary
  for creating a valid OAuth2\Request instance. In particular, it
  ensures that the OAuth2\Request instance is populated from
  content-negotiated values.
CS fixes

- trailing whitespace
Enable OPTIONS handling and content negotiation

- Let OPTIONS calls pass through (to allow for CORS support)
- Marshal the OAuth2 request object from the ZF2 request object, using
  content negotiation for body content. This makes testing easier and
  less prone to error due to elimination of superglobals usage, and also
  ensures that values are shared between the libraries.
Merge branch 'hotfix/options'

Close #9

Complete marshaling of the OAuth2 Request instance from the ZF2 request object.