change everything to use a Class