Enforce "must not should" on Puppet::Type instances in tests.
Because we define a should method on Puppet::Type, and that conflicts with
the identically named method in RSpec, we have an alias for must defined in
the test helper.
Sadly, this isn't *complete*: if you call should on those instances you
actually get no failure, it just silently ignores your actual test.
This change monkey-patches Puppet::Type in the spec helper, and adds a type
check to fail hard if you supply something "illegal" as the argument to
Puppet::Type.
Signed-off-by: Daniel Pittman <daniel@puppetlabs.com>