Added dillon's proposed class structure