localStorage, without the bugs