Tweak E2D model to allow one glass block

Hacky addition assumes one single glass block that is
set once and doesn't change. This is to allow that block's
state (internal temperature) to remain in place even after
a model update, which would otherwise re-create all blocks.

This hack will not be necessary after E2D is changed to support
moving existing polygons.
Add show-shapes toggle
Add model saving and loading
Add simple drawing of objects to Energy2D model

This doesn't update Energy2D, it simply adds a canvas
in front of the model that we can use to draw new
rectangles in the model.