Improved sudo management

* Set the puppetrun sudo command to match the user specified using puppetrun_user parameter
* Only manage the sudo rules if both puppetca and puppetrun are enabled

This is a refactor of #101 

The spec tests fail on my desktop, could use second pair of eyes as it appears like it shouldn't be failing.
@domcleal The other way around as in runas_user before tag?