made things more object oriented