Adds storage driver interface, tests, and two basic implementations