Updated the class system, updated tests