Extracted storage into its own class for ease of testing.