[COOK-3785] start supporting rhel family

As discussed in pull request #28, here is an updated PR that builds on @garrypolley's original PR and incorporates some of the improvements in my local branch.  I cherry-picked the commits that were specific to rhel support.  The other more general improvements can be incorporated as separate pull requests (e.g. pull request #29, pull request #31, etc).