many many bug fixes and things.