Design changes, reorganize method hierarchy for scalability.