Sending `Host::Managed.new :type => 'Host::Discovered'` is not the same as sending `Host::Discovered.new`. When we call `Host.new :type => 'Host::Discovered'` we need this change, or else we get a `Host::Managed` returned, regardless of the type option.