Fix provider with best practices

* use load_current_resource
* use Mixlib:ShellOut
* ...