Add a few unit tests for Format and Theme
This exposes some issues with unclear semantics in isNormal and hasTextColor on themes with a default text color (such as the dark one).