implement the setup.* files for non-merged devel

closes #6
address zsh chpwd weirdness

according to:

https://github.com/ros/catkin/pull/613/files
[style] colorize the status bar preamble
refactored generation of non-merged devel setup.sh

Differences:
- The first source does not get --extend
- The recursive run depends of the leaf
  packages are also sourced
- All built packages are sourced, even when only
  a subset of the workspace was just rebuilt
Merge pull request #24 from catkin/issues_6

build: implement the setup.* files for non-merged devel spaces