fix one bug and improve flash control

1. isEmbed method should great than -1
2. flash player can blur through document.activeElement.blur()
Initial synchronization commit.
Synchronization is via `chrome.storage.sync.*`; data is cached in `localStorage`.
Code review of Sync().
Code review of Sync().
Settings tests pass, Sync still has an error.
Functional sync.
Fix indentation and disable sync.log() messages.
Add tests for sync.
Add test cases for "asynchronous" sync.
Add remote sync test for setting cleared.
Delay initializing sync until other components have started.
Test that all stored settings are JSONified.
Comments for philc.
Fix sync.init.
Code review, clean up.
Clean up initialization.
Add a couple more test cases for Sync.
Response to @philc's comments regarding sync.
Merge branch 'smblott-github-sync-chrome-instances'

Conflicts:
	tests/unit_tests/utils_test.coffee
Turn off debug mode

I think we want to leave it off in the shipped version