Fixes for puppet 3.6.2 and strict_variables = yes

Also adds travis testing for these features.
To stop strict variables being unhappy when this is undefined (there are explicit tests which check this)