Should we provide a storage interface instead so folks can easily swap out sqlite for postgres or something else of their choosing?
Should we have a single endpoint across all runnables? Is the main issue associated with identifying a runnable uniquely right now (i.e., are we relying on the path to identify which runnable we're working with?)