Remove hardcoded paths

* added helper functions to return variables for system we are running on
* removed hardcoded paths and socket type

This will allow us to expand to other operating systems without changing too many files. 
This seems like a change that can be made later, when it is used.  I'm not a fan of writing logic that doesn't get used in the current changeset, unless it is required by an outside repo.