added theme support and a whole bunch of themes