Ok, .activeSong property wasn't good idea.

Because it was a data duplication and yet another state to be synced.
Small refactoring.
Add CLOSURE_UNCOMPILED_DEFINES. Nice!

Because you *want* to have exactly the same code on dev and production.

goog.json.USE_NATIVE_JSON is slightly different than goog
implementation (which is more strict).

I just struggled with hideous sync bug, one tab with dev version and
second with compiled version caused sync loop, because different
serialization. Fixed now :-)