Added *Storage objects
Added *Storage objects

Added AbstractStorage, InMemoryStorage and PersistedStorage objects - provide a layer of abstraction for the storage underneath the *Value classes to enable them to be used in both the coverage and the RecordDictionary as well as with in-memory and on-disk persistence

ooici/coverage-model,ooici/coverage-model