lots of fixes, changes, updates