MAJOR (WIP): Reorganized to enable 'config' and 'info' verbs

- Added `catkin config` verb
  - Unified the build Context class to cover the config options, now in
    catkin_tools.context module
  - Context class now has *_space_abs attributes to distinguish from the
    relative paths stored in the configuration
  - This verb has most of the "configuration-type" options which were in
    catkin build. It also has complementary options which un-set these
    options. For example, `--install` also has `--no-install`.
  - Calling config with no options just displays the config
- Added `catkin info` verb
- Build configuration is now stored by the `config` verb
- Re-worked the `catkin clean` interface to be more intuitive
- Refactored many of the utility functions from `catkin build` to
  separate out their build-specific functionalities from functionalities
  which are useful for other verbs.
  - color.py
  - context.py
  - common.py
  - run*.py
- Moved resultspace-processing functions into resultspace.py