Lot of new stuff and fixes