knife-essentials migration to chef

- when knife-essentials got slurped into core chef, the
  classes changed.  we need to support both based on what
  we detect as being loadable, and prefer chef over
  knife-essentials if both exist (knife-essentials is
  now deprecated).