Update to Elasticsearch 0.20.4

Closes #55
Update default Elasticsearch version to 0.20.5
Allow Berkshelf to handle loading cookbooks in Vagrant

Fixes #56
Declare `node.elasticsearch` defensively in attributes/default.rb

In some environments, the cookbook blew Chef run since the `node.elasticsearch` attribute wasn't set:

    ================================================================================
    Recipe Compile Error in /tmp/chef-solo/cookbooks/elasticsearch/attributes/proxy.rb
    ================================================================================

    NoMethodError
    -------------
    undefined method `to_hash' for nil:NilClass

    Cookbook Trace:
    ---------------
      /tmp/chef-solo/cookbooks/elasticsearch/attributes/default.rb:8:in `from_file'
      /tmp/chef-solo/cookbooks/elasticsearch/attributes/proxy.rb:1:in `from_file'

    Relevant File Content:
    ----------------------
    /tmp/chef-solo/cookbooks/elasticsearch/attributes/default.rb:

      1:  # Load settings from data bag 'elasticsearch/settings'
      2:  #
      3:  settings = Chef::DataBagItem.load('elasticsearch', 'settings') rescue {}
      4:  Chef::Log.debug "Loaded settings: #{settings.inspect}"
      5:
      6:  # Initialize the node attributes with node attributes merged with data bag attributes
      7:  #
      8>> node.set[:elasticsearch] = DeepMerge.merge(node[:elasticsearch].to_hash, settings.to_hash)

Fixes #58
Fix typo in README.markdown

Closes #62
Added info about "device file" into the attributes/data.rb file

Closes #60
Remove unsupported `provides` calls in metadata

Closes #63
Update the cookbook metadata.rb file
Use the Github version of "ark" cookbook
Use the @opscode-cookbooks Github repository for "java" cookbook
[VAGRANT] Install `curl` before installing Chef
Fixed handling of plugin-related attributes, Chef 11 compatibility

* Restructured & rewrote the handling of plugin-related configurations
  in attribute and recipe files.

* Fixed an issue where `plugin.mandatory` was not properly propagated to elasticsearch.yml

* The cookbook is now compatible with Chef version 11.4.0
Added automatic installation of Pry in Chef installation provisioner

<https://github.com/pry/pry>
Simplified the `elasticsearch.yml` template file

Removed all the comments from the `elasticsearch.yml` file, to prepare for adding back
the missing attributes and allowing adding custom configurations.

Related: #59, #39
Added attributes missing in `elasticsearch.yml`

Closes #59
Added missing attributes for AWS discovery and operation to `elasticsearch.yml`
Allow setting custom configurations in `elasticsearch.yml`

Added a block of code which will print all key:value pairs set in the
`node.elasticsearch[:custom_config]` attribute in the `elasticsearch.yml` file:

See Vagrantfile for example.

Fixes: #59, Related: #64
Sort iteration of logging config in `logging.yml` to prevent needless restarts

In practice, <% node.elasticsearch[:logging].each do |key, value| %> seems to have a non-deterministic order in Ruby < 1.9,
thus Chef will trigger a restart of the ElasticSearch server every time the chef-client is run.

Closes #64
Release 0.2.1
[FIX] Fix an issue where `node.elasticsearch.custom_config` was missing and crashing Chef

Closes #65