Make init callback optional

Hey Brian,

As we discussed during JSConf.eu, I think callbacks should actually be optional, especially when dealing with storage adapters we know are synchronous (e.g. localStorage). I see a lot of people just passing $.noop or Prototype.emptyFunction or function(){} as final arg, just because they have to.

So here's my pull request, with relevant passing tests :-)

Cheers!