(PUP-3016) Use the puppet() helper instead of assuming it is in $PATH

Use the puppet() helper function instead of assuming puppet is in the path. After installing puppet on a Windows system in particular, it's path is not reflected in the shell environment. Using puppet() lets Beaker figure out how to execute the puppet binary.
Yes. I didn't understand the `Command.new` vs. `on(agent,...)` so I tried out using just the helper for both cases and it ran just fine. This runs and passes on win2008 and win2012 and still works on Linuxen.