At least CentOS 5.9 was being detected as RHEL.
Properly handle CentOS/RHEL 5 git installations. Fixes #46.
Merge pull request #50 from s0undt3ch/issues/46

Properly handle CentOS/RHEL 5 git installations. Fixes #46.
Use `printf` for coloured output since using echo requires some support testing.
When starting daemons on Ubuntu, first stop and then start.

Earlier versions of the upstart script did not support restart. So, it's safer to stop and then start.
Support daemons **re**start on debian installations. Refs #33.
Support daemons **re**start on Fedora installations. Refs #33.
Support daemons **re**start on CentOS/RHLE/RHL/Amazon Linux installations. Refs #33.
Support daemons **re**start on Arch installations. Refs #33.
Support daemons **re**start on FreeBSD installations. Refs #33.
Support daemons **re**start on SmartOS installations. Refs #33.
When un-installing a non installed package on Ubuntu, the error code is 100.
Catch errno 11 even when not streaming.
Ubuntu's start daemons function is not meant for git installs only.
Initial code to support #33.
Minor, picky, alignment.
Some `getopts` and logic fixes. Added one test case for config only mode.

* `getopt` was ignoring `-C`.
* Fixed some logic which should stop execution in some cases(regarding the config only mode execution)
* Added a test case to test if script execution stops if config mode is enabled and no config dir is provided.
Better explain what's going on. Fail if in config only mode and nothing was configured.

* We now explain what we are installing or configuring.
* In case of just configuring and no config files or keys were copied over, fail execution.
Added 2 config related test cases.

* Check if we fail if the passed configuration directory does not exist.
* Check if we fail if no configuration is actually done.
When passing the configuration directory, fail as soon as possible.