in reply to Battling with OOP performance
Just make sure your objects deserve to exists as objects. Is the Person class needed for inheritance? Does another class use Persons outside of Groups (and would a group of one be a problem)? You may find that when you start absorbing or duplicating functionality from one class (Person) into another (Group), the original class becomes nothing more than a glorified hash. It's good to keep a sense of perspective (and humor) about objects - my favorite thing about Perl is the "bless" keyword...