This should alleviate some of the pressure of serializing changes on the main
thread. We're assuming that `deadline.timeRemaining()` is high enough to compute
the serialization because there's no simple path to serialize state across many
`requestIdleCallback`s (e.g. because state might change between two callbacks).
When opening a second Atom instance (e.g. when running the integration specs)
indexedDB connections will fail. In this case, StateStore.prototype.save
and StateStore.prototype.load will become noops.
Signed-off-by: Katrina Uychaco <kuychaco@github.com>