Picasso 2.0

@JakeWharton @lexs @swankjesse 

- Introduces a pipeline implementation with a `Dispatcher` background thread for processing and managing requests
- Getting further away from the main thread, which now only manages cancellation and dispatching
- Re-wrote a lot of the tests to pure unit tests, avoids integration tests that span across multiple classes
- Removed strong reference from `TargetRequest`

Take your time in the review. I am not in a rush.

Will address all comments after you are done reviewing.