Variable executables

This allows alternate executables to be specified for python and pip.  For example, you might want to specify a non-default version of Python like this: `{ role: bobbyrenwick.pip, python: python2.7, pip: pip2.7 }`.

Along the way, I changed how to check if pip is already installed so that it will work even if a full path to the pip executable is provided.

Let me know if you would like me to make any changes.