Added some new classes and modified existing classes