zstored/zstoredhttp: split out storage API into its own file with StorageHandlerFunc types