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.
Indeed. I noticed there are a bunch of other unused imports, should I clean those up too?  Specifically:

    import android.graphics.BitmapFactory;
    import org.robolectric.Robolectric;
    import static android.graphics.Bitmap.Config.RGB_565;
    import static com.squareup.picasso.RequestHandler.calculateInSampleSize;
    import static com.squareup.picasso.RequestHandler.createBitmapOptions;
    import static com.squareup.picasso.RequestHandler.requiresInSampleSize;