Merge pull request #97 from jbohren-forks/test-unicode

runner/test: General handling of unicode between python2 and python3
use portable basestring type for isinstance's
Merge pull request #100 from catkin/isinstance_str_compat

use portable basestring type for isinstance's
config: Auto-initialize when config is called with non-empty args. Fixes #101
Merge pull request #103 from jbohren-forks/config-auto-init

config: Auto-initialize when config is called with non-empty args.
build: Automatically build vanilla CMake packages in workspace
build: Fixing another python3 incompatibility with utf8 encoding
build: improving robustness of automatic vanilla cmake integration
build: Fixing another unicode encoding error

Prompted by the following error:

```
[build] Runtime: 19.4 seconds 13.2] [gazebo_plugins - 9.1]                                    [2/12 Active | 92/107 Completed]
Traceback (most recent call last):
  File "/usr/local/bin/catkin", line 9, in <module>
    load_entry_point('catkin-tools==0.2.0', 'console_scripts', 'catkin')()
  File "/usr/local/lib/python2.7/dist-packages/catkin_tools-0.2.0-py2.7.egg/catkin_tools/commands/catkin.py", line 198, in main
    sys.exit(args.main(args) or 0)
  File "/usr/local/lib/python2.7/dist-packages/catkin_tools-0.2.0-py2.7.egg/catkin_tools/verbs/catkin_build/cli.py", line 219, in main
    no_notify=opts.no_notify
  File "/usr/local/lib/python2.7/dist-packages/catkin_tools-0.2.0-py2.7.egg/catkin_tools/verbs/catkin_build/build.py", line 565, in build_isolated_workspace
    out.command_log(event.package, event.data['message'])
  File "/usr/local/lib/python2.7/dist-packages/catkin_tools-0.2.0-py2.7.egg/catkin_tools/verbs/catkin_build/output.py", line 108, in command_log
    self.__command_log[package].append(msg)
  File "/usr/local/lib/python2.7/dist-packages/catkin_tools-0.2.0-py2.7.egg/catkin_tools/verbs/catkin_build/output.py", line 47, in append
    self.file_handle.write(msg)
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2018' in position 113: ordinal not in range(128)
^C
^\[1]    30921 quit (core dumped)  catkin build
```
build: Fixing another unicode bug with python3