Issue 31

Why can't we then add `CacheWriterException` to this API's methods? This will simplify exception handling at the Cache level, and you're forcing the user to deal with it anyway... also, you're building in the expectation that the implementation of this interface will be throwing a `RuntimeException`, which may or may not be true or the best thing to do... e.g. it might internally need to catch `SQLException`, then wrap it in a `RuntimeException`, which in turn will be wrapped again by Cache into `CacheWriterException`? Seems like an unnecessary level of indirection..