Start of storage abstraction. WIP