Closes #6 separate storage implementations