added tests and deleted some unnecessary classes