Refactor confenv to use semantic_version

This change uses the puppet_semantic_version facts to determine the
commands used. This also adds support for puppet 3.1
Use actual integers for puppet_semantic_version

The puppet_semantic_version facts would previously return a string. This
commit will convert them to integers
Fix puppet invocation for configure env

And now we come full circle.
Only run confenv config print if cmd is defined
Merge pull request #16 from puppetlabs-operations/0.12.x

Update facts for puppet 3.1