Added some classes and some inheritance