reorg classes to make more sense