some changes: not going to mess around with DBs as thats not realy relevant, a lot of fixes, a few basic tests, some structural changes