Add simple undo functionality.

An extra backing surface is used to record the screen state between
strokes. Adds "gromit-mpx --undo" and "gromit-mpx --redo" commands.
Both have the same effect, swap undo backing surface and current
backing surface. Prepares for future multiple levels of undo and redo.
Add multiple levels of undo/redo.

Allows undo/redo using --undo and --redo commands. Currently preallocates
large surfaces to save entire drawing state, wastes memory.
Update documentation for undo/redo.
Add undo/redo menu items to systray menu.
Add undo/redo hotkey.

Press of undo hotkey is undo, shift-press is redo.
No action when window is hidden.
Document undo/redo hotkey binding.
Merge pull request #8 from nwhitehead/undo

Add simple undo functionality.