eliminate theme loader class

Themes are now loaded directly within the VSTheme class and are
accessible via class methods. No need to have instances of something
like VSThemeLoader, since every instance is immutable and identical.

In addition, when there are multiple themes defined in the plist file,
a single theme can be chosen (also in the plist file) as the “active”
theme. This allows the plist editor to switch themes in the app without
touching the code.