[COOK-2319] - Clean up the service recipe

Each of the various init_styles we support in this cookbook have their
own recipe now. Users can include the specific init style as a recipe,
or modify the attribute as needed.

Mostly just moving code around and DRYing things up.  The only real
change was removing the dependency on the cron cookbook, it's only
needed when `use_cron_d` is set to true.  All other cookbooks were set
to suggests unless they were needed by default, so this is more
consistent.
[COOK-2319] - User detection, Remove unused requires

* Set a constant for user based on chef version detection in helper
  library, use that for user ownership when the node is a chef server
* remove the unused chef/version_constraint and chef/exceptions requires
[COOK-1002] - add start action for init service too
Merge branch 'COOK-2319'