[#39] Added support for more settings in the `elasticsearch.yml` configuration file

* Added support for Multicast configuration in attributes
* Added support for Gateway configuration in the configuration file
* Added support for JMX
* Added support for setting Garbage Collection and Slow Log configurations in attributes
* Added support for Throttling configurations in attributes

Closes #39
Added the extension method `print_value` for convenient filling configuration files

The method is automatically included in the Erubis::Context class, and available in all ERB templates.

<%= print_value 'bar' -%> is evaluated as:

 `node[:bar]`

<%= print_value 'foo.bar' -%> is evaluated in multiple ways in this order:

 as `node['foo.bar']`,
 as `node['foo_bar']`,
 as `node.foo.bar` (ie. `node[:foo][:bar]`)

See documentation in the `libraries/print_value.rb` file.

Fixes #39
Complete overhaul of the attributes configuration and the `elasticsearch.yml` template

* Cleaned up and pruned the `attributes.rb` file
* Complete overhaul of the Elasticsearch configuration file, using the stock one as template

The template uses the `print_value` extension method to print attributes with a "truthy"
value, set either in data bags, node attributes, role override attributes, etc.

It is possible to set *any* configuration value exposed by the Elasticsearch configuration file.

For example:

    <%= print_value 'cluster.routing.allocation.node_concurrent_recoveries' -%>

will print a line:

    cluster.routing.allocation.node_concurrent_recoveries: <VALUE>

if the `node.cluster.routing.allocation.node_concurrent_recoveries` attribute is set.

The default attributes set by the cookbook contain values inferred from the environment
(eg. the memory settings or the node name), or reasonable defaults for production.
Use your preferred method of attribute configuration to set them.

Fixes #39