jwr's hacks

Changes: 
* printf and heredocs for all of the echoes
* reduced the pipeline for comparing the arrays
* only environmental variables should be uppercase (left those that would break preexisting installs)
* only print modules for certain operations
* XDG base dir spec for config location