added a Gene class