almost done getting this to pass

pretty much worked out all of the logic in the test, lets see if i can get more functions going