Fixes needed for running tests against puppet's master branch

Specifically this commit

 - Adds specific checks for puppet 3 when loading storeconfig code
   storeconfig does not work against current master and will be removed
   as part of Puppet 4.0.0. We want to maintain backward compatibility,
   so the code supports both

 - Removes references to Puppet[:trusted_node_data] when on Puppet
   4 (essentially assuming it is always true on 4). Like above we will
   look for it when on Puppet 3.y.z and ignore it (assuming true) when
   on Puppet 4.y.z
I think as long as the feature API doesn't change in 4, I have limited issue with this. If it changes, we should just use a static method somewhere instead, which is just as trivial as a feature IMHO from our perspective. My point primarily is about backing ourselves into a corner, when 'features' are used to determine version, then if 'features' changes we are stuck.