Add pre_modify hook for generators

This hook is intended to run before the generator has made any changes to the
repository. It can be used to pre-verify such things as rosdep keys or other
pre-determined values.
Add returncode to GeneratorError

To do this, we override sys.excepthook with a function that calls the old
sys.excepthook so the backtrace and exception are printed, but then we invoke
sys.exit with the desired return code (or 1 if not specified).
Generalize UBUNTU_* error codes to GENERATOR_*
Set return code for rosdep key resolution exceptions
Allow recovery from platform-specific rosdep key errors

If an action contains the command 'bloom-generate' and returns a specific
error code, notify the user that the generator can be skipped and the
release can continue without it.
Merge pull request #308 from cottsay/skip-on-key-error

Allow recovery from platform-specific rosdep key errors