added some tests
still bug hunting
tests updatet
classes updatet