refactor storagebackend test to inherit more test cases from base classes. This makes it easier to manage and ensure same api and test being run for each subclass.
added new target for coverage testing. Make will run basic test with no coverage testing by default.