Change the environment cookbook_versions validator to use the constraint_map_spec api used by cookbooks.

* environment cookbook version validator now uses the same
  constraint_map_spec as used by cookbooks.
* remove 'null' as a valid option for cookbook_versions as an experiment.
* use more strict cookbook version validation: empty and single-element lists will be rejected
* accepting version strings without qualifier, treating  "1.0.0" as "= 1.0.0"