(MODULES-6831) Use PowerShell Param Validation
(MODULES-6831) Use PowerShell Param Validation

 - PowerShell convention is to always start parameters with uppercase
   and to use appropriate validation attributes where applicable.

   Remove the unnecessary Validate-Parameter function that checks only
   for ' values in DNS names and instead replace it with
   ValidateScript that calls the .NET method URI.CheckHostName which
   performs more robust DNS validation.

 - Even though DNS alt names and the certname could technically be an
   IP address, instead only allow actual DNS names

 - Note that ALT DNS names is a comma separated string that can be
   passed directly to the simplified installer script, rather than a
   more correctly typed array of strings

 - Add a small check to make sure that if a CA string is provided that
   it has content

puppetlabs/puppetlabs-bootstrap,puppetlabs/puppetlabs-bootstrap