Refactored installer to check for sudo
This significantly changes the installer to check for sudo's existence and basic permissions since it is required later in the python script.
Additionally a feature to relaunch the script with sudo if it is forgotten under a non-priv user.