Remove the distribution version revision number becuase it
* is not a large enough change to effect installs
* needs the "." separator, which is currently removed, in the version number to
be distinguished
* is not currently implemented for Sun and BSD installs
* Add support to specify the git branch or revision that should be checked out.
* We now `shift` arguments as they are used. Once we've handled them all, if there are still arguments remaining, fail.
* Minor `echo` changes.
It will be cumbersome if even possible to handle colors on shell output and no colors on logfile, and doin' this using the simplest and most portable `sh` way.
* Dropped the log function, instead we pipe stderr and stdout to both the console and the logfile.
* We now make use of 2 scripts from shtool which are involved in system detection, downloaded at runtime.
* In order to support a distribution there are some functions which need to be added to this script, all explained on the source.
A sh bootstrapping script is copied to the target VM and used to determine the correct method of installing the Salt binaries.
Any operating system supported by Salt with a sh shell can be added to the bootstrapping script.