a bunch of updates and fixes