add read/write methods to cache
delegate Redis custom logic to StoreProxy

this removes ugly `if redis blah` code from cache
Fail2Ban helper

based on gist from @ktheory https://gist.github.com/ktheory/5723534

Modified slightly to use fail2ban `filter` terminology to simplify
Rack::Attack initializer configuration (only one block is requred for
this approach instead of 2)
reorder logic to not repeatedly extend ban after more failed requests
spec for Fail2Ban
added README docs for fail2ban
collapse fail2ban name/discriminator into one argument
updated and condensed fail2ban docs
Cleanup whitespace
Clarify Fail2Ban readme
version 2.2.0
Update changelog