Fixed strategy according to OAuth2 protocol.
Fixed old tests.
Added custom errors.
Added some tests.