added tests! yay so testy!