I've finished almost everything except for the trackball interface and the undo/redo stack.