15472 - rewrite puppet agent

Add force as an option and handle the noop/splay/splaylimit options
correctly.

Add a boolean specific aggregation plugin

When enabling and disabling also return the resulting enabled state
and summarize this on the output

Fixed some logic bugs around handling of splay/splaylimit for the
case when the daemon is running