(PUP-3016) use puppet helper in acceptance tests

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.
Retain less-than argument for version of module installed.
Get around having to quote the whole command by inserting a space
after the version operator.  sigh.
closes #3342
Can you add a comment about why we need the space after the `<`? I don't understand the reason myself and someone might come along in a year and try to take it out and fall into a pit of despair. So a comment would be handy :)