Implement dockable image windows

(Relates to #93)

Lots of little problems left to solve, but the bulk of the
implementation is now complete.

Note that aside from changing toolbox/image floating, the Window menu
remains largely unimplemented.  In particular, until a custom tabstrip
is built, it is not currently possible to switch between images while in
Docked mode!