Add Linux support

This adds a basic Linux provider, as requested in [MODULES-1560](https://tickets.puppetlabs.com/browse/MODULES-1560).  It does not presently update the spec tests to handle that.  Suggestions on which tests to look at fixing are welcome.
Isn't at_exit one of those things that is recommended NOT to use? @adrienthebo