Better checks for manifest application status

On trying these tests for the first time, starting a non-existent
service causes puppet to display errors, but still return 0 - thereby
generating a false positive in the test run.

I've adapted this template to use the catch_failures and catch_changes
options which I think is a better example to follow.
Merge pull request #21 from jtopper/better_puppet_exit_checking

Better checks for manifest application status