Remove some of my idiocies
Prepare patchinfos for API change
New AutoPatcher API

- Make autopatchers classes instead of just two functions
- Implement diff/patch files as a special AutoPatcher
- Prevent imp.load_source from being called more than once for the same
  module (which implicitly causes a reload(), breaking class
  inheritance)