Bug 893276: Only write simple-storage json file if the data has changed.

As writing the data is now async we have to use a timeout rather than an interval which can fire while previous data is being writen in tests where the timeout is short.