Move static presets to a service. Next, localstorage service.
Save presets in localStorage.

Also changed make run:
* make run now used --user-data-dir instead of --incognito.
* make run always used port 5103 (so localStorage can be shared)
* make run reuses the old --user-data-dir. To clean it, used "make runclean"

TODO:
* Save generated images properly.
* Load packaged apps directly instead of running a local server.
Change "make run" to use packaged app, not http server.

Also some bug fixes:
* Clear/Splat messages are sent only after the other values have been
  posted.
* Messages are sent to the NaCl module only after it is loaded. All
  messages sent prior are queued.
* Better fallbacks when loading from local storage fails. (the callback
  sends an empty array).
Use Data URI instead of Blob URL.

Now the image can be saved/loaded succesfully from localStorage.
Add "tabs" directive.

It runs jquery UI tabs on the given element.
Use it instead of calling jqueryUI directly in app.js.
Add workaround for String.fromCharCode trick.

I use String.fromCharCode to convert from a typed array buffer to a
string. Chrome seems to store this array on the stack, which exceeds
capacity when the array length is greater than ~120k. Work around for
this is to chunk the array.

Also, remove the brightness/contrast commands when generating
thumbnails.