Implement the `cachegems` and `preparegems` functionality

The unit tests aren't really doing much right now, I really need to figure out
a more automated way to write integration tests for Gradle plugins :/
Expand the readme to actually define how the thing works