created the 3 main classes