This has the un-obvious side effect that if there are multiple SPAs stored, the last one wins. It feels like this should only support one SPA for now, rather than a partial implementation.