Added new classes for easier programming interface! Modified