[COOK-2527] name all private recipes with a leading underscore

The emerging Chef community idiom is to name all "private" recipes with
a leading underscore. End users should only include one of the public
recipes in their run lists: server, node, proxy. In the context of this
cookbook the default recipe is also treated as no-op now.

We will also add the following new attributes

* `node['jenkins']['node']['agent_type']` - type of agent used to
  connect to slave nodes.
* `node['jenkins']['http_proxy`]['variant']` - variant/flavor of HTTP
  proxy to use.
[COOK-2527] notify `service[jenkins]` resource directly

Since the `runit_service` resource exposes a compat `service` resource
we can notify `service[jenkins]` no matter if the server was installed
from a package or war file.
[COOK-2527] remove `node['jenkins']['server']['data_dir']`

For compatibility sake we will make a war installation share the same
directory structure as the package installation method.
[COOK-2527] update .kitchen.yml for recent changes
[COOK-2527] remove logic that restarts on plugin update

Since the `remote_file` resource used to download the plugins is using
a `:create_if_missing` action this code is never executed. We can
revisit when a `jenkins_plugin` LWRP is created.
[COOK-2527] assorted whitespace/format cleanup
[COOK-2527] add support for specifying version of package
[COOK-2527] wire in configuration to init script defaults

This ensures things like user, JENKINS_HOME, and port are wired into the
platform specific init script default files.
[COOK-2527] update README for recent changes