Tidy up component types

Added some consistency to the component types. The DrawingCanvas now
extends the Component type, event methods now explicitly return Done,
and Labelled has been renamed to the US spelling of Labeled.