Placeholder to use full bounds

Fixes #221

Current behavior causes placeholder to first
use full bounds at `setPlaceholder`, then use centered bounds at `onBoundsChange`, causing a broken fade in:

![http://i.imgur.com/d4yMhrf.gif](http://i.imgur.com/d4yMhrf.gif)

This reverts to previous behavior of using full bounds for placeholder:

![http://i.imgur.com/weWxfME.gif](http://i.imgur.com/weWxfME.gif)
Correct for skia decoding problem during underflow.

Adapted from http://b.android.com/6066#c12
Update comments to reflect that memory cache isn't capped anymore.

A previous change https://github.com/square/picasso/commit/f79dd0af3274b511c6d9521aa9e5cf3b2ee7d704 removed the cap on the memory cache. Update the comments to reflect this change.
Merge pull request #323 from f2prateek/patch-1

Update comments to reflect that memory cache isn't capped anymore.
Update maven android plugin
Update travis
Merge pull request #330 from f2prateek/maven31

Update Android Maven plugin and Travis CI configuration
Install build-tools using the SDK manager
Merge pull request #331 from ChristianBecker/patch-1

Install build-tools using the SDK manager
Add null check for Intent

We got the following in one of our Crashlytics logs, on a Dell Venue 8
3830 running Android 4.2.2:

java.lang.RuntimeException: Error receiving broadcast Intent {
act=android.intent.action.AIRPLANE_MODE flg=0x10 } in
com.squareup.picasso.Dispatcher$NetworkBroadcastReceiver@210e9298
       at
android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:768)
       at android.os.Handler.handleCallback(Handler.java:725)
       at android.os.Handler.dispatchMessage(Handler.java:92)
       at android.os.Looper.loop(Looper.java:152)
       at android.app.ActivityThread.main(ActivityThread.java:5132)
       at java.lang.reflect.Method.invokeNative(Method.java)
       at java.lang.reflect.Method.invoke(Method.java:511)
       at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.ja
va:793)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
       at dalvik.system.NativeStart.main(NativeStart.java)
Caused by: java.lang.NullPointerException
       at
com.squareup.picasso.Dispatcher$NetworkBroadcastReceiver.onReceive(Dispa
tcher.java:291)
       at
android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:758)
       at android.os.Handler.handleCallback(Handler.java:725)
       at android.os.Handler.dispatchMessage(Handler.java:92)
       at android.os.Looper.loop(Looper.java:152)
       at android.app.ActivityThread.main(ActivityThread.java:5132)
       at java.lang.reflect.Method.invokeNative(Method.java)
       at java.lang.reflect.Method.invoke(Method.java:511)
       at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.ja
va:793)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
       at dalvik.system.NativeStart.main(NativeStart.java)
Merge pull request #333 from jonathan-caryl/bugfix/null-check-in-onReceive

Add null check for Intent
Merge pull request #285 from square/jw/android-bug-6066

Correct for skia decoding problem during underflow.
Merge pull request #264 from eveliotc/placeholder-bounds

Placeholder to use full bounds
Merge pull request #1 from square/master

update from source