Issue #27 Refactored Status management in dedicated class
 - Added listeners for state transitions
Issue #27 added CacheManagerListeners
Issue #27 If a StateChangeListener throws, make sure we finish the transition
Issue #27 wired Status into Ehcache
Issue #27 Don't release CacheLoaders this way
Issue #27 Wired Ehcache to be Maintainable, and Store lifecycled
Issue #27 added lifecycle test on Ehcache
Issue #27 Added Javadoc
Issue #27 fixing test
Issue #27 A shot at handling lifecycle properly
 - Actually added the lifecycle methods to all API interfaces
 - Added start() to Service, and fall offs of that.
 - State transition failing now throws StateTransitionException
 - Tries to rewind the starting or stopping of "things"
Issue #27 Added error handling in lifecycle, plus javadoc
Issue #27 Trying to please Java8 with this hack
Issue #27 Trying to please Java8 with this hack further
Issue #27 Changes from the PR review
Issue #27 refactored statetransition failures meaning going to 'lowest' status
Issue #27 Proper handling of failures in Ehcache state transitions
Issue #27 Proper life cycling of CacheManager created caches
 - Reserve alias' slot, prior to doing any work
 - Added seams to enable testing
 - Added tests