added some new tests and stuff