Extra safeguards.

Project manager calls preventDefault() on "links"
background.js rejects messages without a command property.
Add "secret" user option to disable tab restore.
Better background commands

Flash the window if it's already open
Pause two seconds to give app a chance to start.
Set up a valid init:complete event, process launch commands then.
Load configs and other text via getPackageDirectoryEntry()
Fixes #127
Turns out this isn't actually any faster, but it is cleaner and doesn't
clutter the console. We'll keep it for now.
Split dev steps into ordered list for easier comprehension.
Add TypeScript support.
Manifest bump.
Fix onRestarted behavior
Add printing. Fixes #120
Fixed a bug with failed file retention killing init:complete.
Refactor tab syntax and rendering out of sessions and into tab.js
Added comments
Move the Settings singleton into its own file for modules that want to load configs asynchronously.
Add Settings.pull() for modules that want to request configs asynchronously instead of blocking load
main.js now uses Settings.pull()
Manifest bump
Fix stupid scoping mistake.
readme changes
Fix paths to enable .crx builds on Linux