avoid use of hard coded constants and support installing from directories supplied by user

Before it was relased as open source the python code in this
repository had a number of hard coded constants specific to local
configuration at one site. We replaced those values with placeholders,
but that meant that the code wouldn't run without patching. So, now
enough values are passed in as function or script arguments to make
this useful without hard coding. In fact I am using genpxe.py and the
infrastruture/xt library at the original site based on this code,
passing in values for the site configuration.