cleanup

- A few comments inline for those who ignore documentation
- Added methods for updating the current and previous
- Added an undo stack.
- Removed call for sprite XML file in form XML, not needed.