minor fixes / improvements

Here are a few suggestion for things I found flawed when trying out the current catkin_tools.

The ``` isinstance(line, str):``` problem is worrying in particular since this idiom is used several times in the codebase (just grep for ```isinstance(```

I am doin too little with python these days to find out what goes on. On my machine using python 2.7.5, the function resultspace.get_resultspace_environment would return an empty dict because the lines would not satisfy isinstance(line, str). Maybe it was unicode for me:

I tried debugging, ```println(type(line))``` would give me e.g.:

```
(u'EDITOR', u'nano', False)
```

I only changed this where it bit me, but I strongly suggest changing it everywhere you encounter it (grep over your workspaces), since basestring seems to be more robust.
true, some suggestions here
http://stackoverflow.com/questions/11301138/how-to-check-if-variable-is-string-with-python-2-and-3-compatibility
same as yours, really. the question remains where you want that, centrally or in each file the idiom is used.