Update Element::create to show it should return "self"
Add a batch of new (unimplemented) element types
Add more elements (unimplemented) to complete the basic set.
Whitespace correction
Add blank implementations of all required abstract methods
Move renderMarkup implementation to the abstract theme, as it is
unlikely to change much.
Crudely implement render methods in text and HTML themes.
Use the abstract theme container renderer to avoid duplication
Use "new static" to avoid every Element needing to define the static
create method.