Changes

The changes that i made were going too complicated, Unnecessary classes
have been removed.