Fix always returning null from MultiTransformation
Apply transformations to cached resources.

This allows transformations to be applied that
for whatever reason cannot be cached. In 
particular this is required for transformations
for GIFs because neither Glide nor the Android
framework include a GIF decoder so we can only
cache the original data. This change is risky,
and relies on transformations being idempotent.
Fix GIF drawable transformations.
Add asGif() default option
Make sure ids match class/package names.