Update `kitchen-docker` to v1.5.0
Convert _ALL_ configuration attributes to a flat namespace

Oh this is just the beginning. FULL SPEED AHEAD!
Put all configuration attributes under a `broker` namespace

Next stop, dynamically generate configuration properties.
Generate property keys from `broker` attributes

Instead of defining _ALL_ possible configuration attributes in
`attributes/default.rb` we’ll generate key-value pair from whatever
attributes that are found under the `broker` namespace.

The diffs in this commit are so _HORRIBLE_, but I couldn’t think of any
other way to get this done. There are still some tests that needs to be
rewritten / added, and I do believe that the configuration generation
creates some unnecessary whitespace / newlines that needs to be dealt
with, but everything has it’s time, mkay?

This is going to be so much easier to maintain.
Allow `dotted` notation for broker configuration

This commit makes it possible to use either underscored symbol keys for
configuration attributes (i.e. attributes defined under `broker`), or to
use a `dotted` String notation, i.e.

```
node.set.broker = {‘log.dirs’ => %w[/some/dir-1 /some/dir-2]}
```

Decided to get rid of support for using nested Hashes as it’ll become
difficult to render Hash-based options (CSV strings) correctly, and due
to the naming of some of the configuration parameters it’s not possible
to use `node.default.this.attribute = ‘something’` as the parameters
include `default`, `fetch` and whatever else.

Removed a lot of unit tests that are unnecessary now that the broker
configuration file is dynamically rendered.
Leave “mixed” configuration names as-is

If there’s a configuration parameter that contains both underscore and
dots we don’t want to convert underscores to dots (for obvious reasons).
Allow nested Hash notation for broker configuration

So, decided to re-introduce the nested Hash notation for accessing
configuration attributes, as such:

	`node.default.broker[:hash][:option] = ‘value’`

It does however mean that the “per topic” attributes cannot use Hashes
anymore, but either Arrays or just plain Strings.
Update headers in template files

Just a heads up.
Remove unused config. related partials

Not used since the configuration rendering is done using helper methods
rather than partials.
Use `dotted` notation rather than `hash` notation

Because I like it better, mkay?
Remove `log4j_config` attribute

Was only needed for setting up ZooKeeper with a different configuration
file from what Kafka was using.
Remove `config` attribute

Was only needed for setting up ZooKeeper with a different configuration
file from what Kafka was using.
Use `jmx_port` directly from attribute

Previously ZooKeeper and Kafka had different JMX ports, but used the
same template for rendering the configuration file. Now that setting
up ZooKeeper is out of the picture we don’t need this anymore.
Remove `log_level` attribute

Rather define levels individually for loggers. Don’t forget those
trailing commas, yo!
Update README w.r.t. new broker configuration attrs.

Just a heads up for the peoples. Could be expanded to explain some
corner cases and whatnot.

[ci skip]
Rename files in `libraries`

The modules are already namespaced, no need to namespace the individual
files as well.
Add header to `libraries/log4j`
Fix kafka installation on Opsworks

Chef's file cache path is apparently only readable by `root` on
OpsWorks, so we have to extract the release archive as root and then
manually set ownership.
Account for different ways of defining `log.dirs`

The (obvious) downside of having too many ways of defining configuration
attributes. Perhaps I’ll revise that decision in the future, but for now
it’s not too much of a hassle.
Version bump to v0.5.0

Quite a “large” release with a ton of changes, ranging from a rewrite of
how “configuration attributes” are managed to minor fixups:

* Removal of `zookeeper` recipe. Use a dedicated cookbook for that.
* Host all “configuration attributes” under a `broker` namespace.
* Configurable and sane log4j properties (see `attributes/default.rb`
  for examples).
* Configurable KAFKA_GC_LOG_OPTS environment variable through the
  `gc_log_opts` attribute.
* Bugfix for using this cookbook with AWS OpsWorks (thanks to @pfleidi).