Fix lots of exception-related problems.
These have been around since the Big Code Split.
removing bthis update spans a branch affecting the following files: baborting update spanning branches!(use update -m to merge across branches or -C to lose changes)