Added and modified a few classes