+added basic functions
still needs rework; it's not yet functional