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.
```
└> pry
[1] pry(main)> at_exit { puts "exiting!" }
=> #<Proc:0x007fd9746a4d20@(pry):1>
[2] pry(main)> fork do
[2] pry(main)*   sleep 1
[2] pry(main)* end  
=> 15490
[3] pry(main)> exiting!

exiting!
```