Use C++0x standard compilation semantics
Link models directory into build tree
Fix initialization bug discovered by valgrind
Add the Journal class to keep track of undo state.

I'm not sure why, but Valgrind insists I'm leaking memory when invoking STL
list<T> methods.