fix and oraganize theme system