I'm also curious what changes to exception handling are causing you trouble. The minor change to the except syntax is taken care of by 2to3 and using BaseException as the base class of your exceptions works on versions at least as early as 2.4.
It does take a lot of work to do, and you have to restrict your programming style to maintain compatibility. If I didn't have help I'm sure I wouldn't have made much progress at it. More and more projects do support both major versions from the same code base. It certainly can be done, it will just be ugly for a while.