Feature better themes

Add enough of a theming implementation to fix some UI bugs.

There are a couple of IDE changes that will need to be made to go along with this - various IDE stacks should have their colour/font properties cleared ("Home", in particular) and should not set explicit theme-related properties on new controls (e.g. the tools palette sets the text font and size for OSX tab buttons).