Added the main object oriented classes