Compatibility for ArchAssault along with a few tweaks and improvements

From Commit:

Changed the title, progress bars and horizontal bars to render based on the terminal width. Switched a bunch of commands to more distro-agnostic equivalents (eg: which -> type -P), changed mingw gcc to be configurable as there was a rather dramatic change to the command name a little while ago that places some distros with the old one and some with the new, depending on update cycle. changed 'ifconfig' (net-tools) to use its successor 'ip' (iproute2) instead. got rid of a bunch of redundant echos using, including a bunch in if/else statements that were easily pulled out and that part of the if statement removed when the condition was switched with its inverse. cleaned language up a bit when it seemed like more could be added, or I didn't understand what something meant initially. the manual command is now provided when running it too, in case someone wants to both start it now and know how to start it again later. there are probably other little things I'm not remembering too, and feel free to pick and choose if you don't want everything.