Allow injected RequestHandlers to override the defaults

Addresses an issue where the default `RequestHandler`s took priority over user supplied `RequestHandler`s.

For example, if you created a `RequestHandler` that could handle `content://` URIs, Picasso would always use the first eligible `RequestHandler` in the list - the `MediaStoreRequestHandler` - because user-supplied request handlers are always appended to the end of the list.

The content of the test is a bit different than the other tests as it is not using a mock `Picasso` object.  This is because the logic that needs to be tested exists within the `Picasso` constructor.  This should probably be changed, but I wanted to keep this PR as concise as possible.
Oh, even better.

    RequestHandler handler = new AssetRequestHandler(context);
    List<RequestHandler> handlers = Arrays.asList(handler);