Added basic classes and implemented some methods