Too many changes to list explicitly.  Sorry for the giant dump.