Improve cache tests

~~(WIP will squash to one commit)~~ *Done* Please review 
Redid tests for cache …
- Each test is explicitly skipped rather than "warn" and not being eval'd.
- Stub Time.now and use for expire base tests
   - Changed Redis to use #set and #expireat for timestamp based cache expire.
     "expires in" vs "expires at"
- Use shared examples rather than read file and eval(slightly better failures)
- Split tests into their each file