added more tests, but i don't think they work yet