Initial commit.

Merged with new project structure, added snapshotting.

Finished specs. Renamed sample app.