Good bbject design for many-to-many relationship