Removed redundant members, clarified class names, used better hash factors.