Changed operation tracking to use a queue and flush on commit.

This change was required because SQLite locks the database on a
writing transaction. The nose tests broke however, so there's
something missing still.

Also did the CRUD for the client-side application test.