Extract some useful classes and simplify Glide.with().using() usage

The biggest change is (32fccfb):
Make the engine require only the dependencies it will use based on `DiskCacheStrategy`.

See 0dad499 for the effect it has on usage.