Master branch updated

Feature additions:
- Semantic zoom
- ctrl+scroll zoom

Both additions should be relatively minor in scope and limited to the graphics component only. Semantic zoom is a bit of a hack (as can be seen in DrawingController's moduleZoom()) and needs undo functionality added in properly (proposed command pattern) to zoom out with any kind of sanity. At the moment it's less than ideal but it does just work.