created classes needed to make this object oriented