Native app callback support

My project using doorkeeper to build OAuth provider, and provides it for native app

According to <https://developers.google.com/accounts/docs/OAuth2InstalledApp#choosingredirecturi> (it appears [here](https://github.com/applicake/doorkeeper/blob/master/lib/generators/doorkeeper/templates/initializer.rb#L59)), I think doorkeep misunderstand why provide ```urn:ietf:wg:oauth:2.0:oob```, It's designed for native app not for test

So I move ```test_redirect_uri``` to ```urn:ietf:wg:oauth:2.0:oob:test``` and add ```native_redirect_uri``` use ```urn:ietf:wg:oauth:2.0:oob```, and let it return JSON, easy to parse

As issue #349 I commented, I think ```test_redirect_uri``` is no need, maybe we can remove it.

In addition, ```ErrorResponse```, ```TokenResponse``` and ```CodeResponse``` without a unified interface made many bugs, seems need a refactor, so do their request classes.