(#11324 and #11323) Properly validate tags and facts input
(#11324 and #11323) Properly validate tags and facts input

Previous to this commit, CP would accept invalid input
from the user for --facts and --tags. An exception
was not being thrown because the hash was
successfully generated.
This commit fails properly in invalid input.

16nsk/puppetlabs-cloud_provisioner,amos6224/puppetlabs-cloud-provisioner,puppetlabs/puppetlabs-cloud_provisioner,puppetlabs/puppetlabs-cloud_provisioner