Implement support for request priorities

Not sure if you've considered something like this in the past but here it is. This patch implements request priority support in Picasso. This feature can be especially handy when you have UIs with lots of images and you want to have tighter control over which images should load first. This is inspired by Volley's API.

It adds a new API in `RequestCreator` to define the request priority:

```java
Picasso.with(context)
       .load("http://example.com/image.jpg")
       .priority(HIGH)
       .into(someImageView);
```

Priority can be `LOW`, `NORMAL`, `HIGH`, or `IMMEDIATE`. `BitmapHunters` compute their priority in the executor by taking the highest priority of its attached requests. For example, if a `BitmapHunter` has two attached `Actions`, one `LOW` and and one `HIGH` priority, its priority will be `HIGH`.
This is fairly expensive computationally. I think we could track this in a field and update it as requests are attached/detached from inside an Action. This would make computation incremental and access cheap (the latter of which is essential when the priority queue is calling `compateTo` multiple times).