begin new class hierarchy to incorperate groups