Added new classes to refactor code.