Provide access to the Response object directly and via Callback.

Update RetrofitError to use Response object as well.
Remove explicit MimeType class in favor of simple String.

The 'getFilename' method is only use by FileBodyPart class which doesn't get used in our code paths.
Merge pull request #143 from square/jw/response-object

Provide access to the Response object directly and via Callback.
Merge pull request #144 from square/jw/kill-all-mimes

Remove explicit MimeType class in favor of simple String.
Small tweaks.
Merge pull request #145 from square/jw/small

Small tweaks.
Switch headers to come from an interface implementation.

This makes it much more easy to provide dynamic headers. Rather than dealing with a Provider, you can now have a concrete class implement this interface.

Closes #146.
Merge pull request #147 from square/jw/footers

Switch headers to come from an interface implementation.
Break up TypedBytes into TypedInput and TypedOutput.

Update Response to use TypedInput.

Closes #135.
Merge pull request #148 from square/jw/typed-things

Break up TypedBytes into TypedInput and TypedOutput.
Move packages.

* `retrofit.io` -> `retrofit.http.mime`
* `retrofit.android` -> `retrofit.http.android`
Merge pull request #149 from square/jw/package-move

Move packages.
Remove JSR-330 dependency in favor of our own annotations.

Closes #137.
Merge pull request #150 from square/jw/drop-jsr-330

Remove JSR-330 dependency in favor of our own annotations.
Follow-up @Name introduction.
Use TypedOutput for Requests.

Refs #141.
Disallow query params in the URL.
Merge pull request #153 from square/jw/weary-query

Disallow query params in the URL.
Provide a mutable server implementation. Update Server API to conform.
Merge pull request #156 from square/jw/point-to-things

Provide a mutable server implementation. Update Server API to conform.