Kitchenplan 2.0 changes: stability, maintainability, and more configuration over recipes

This release was focussed on cleaning up Kitchenplan. Over time it has become a bit bloated, with lots of dependencies, all of which fail at one time or another. This new release should solve this all.

I've implemented the following changes:

* chef-homebrewalt: an updated fork of the opcode homebrew cookbook, but this one works in a Kitchenplan context. It makes sure both homebrew and homebrew cask are available and provides hooks to use in your own cookbooks. One major feature is that after setting up Homebrew, it will install a list of homebrew and cask apps you provide from attributes. In the Kitchenplan context this means you can install any app available in Homebrew or Cask from within the config files without touching the recipes. Making the cookbooks a lot more "stable".
* chef-nodejs: I've updated the nodejs cookbook to also install a set of npm packages after installing node. Allowing for the same configuration over recipes system as above.
* chef-applications: I've removed all recipes that can be done via the config. Leaving only those that add something on top of the bare install. Making it a lot smaller and more manageable.
* All cookbooks are locked to a version, same goes for the gems we depend on, thay are even in the git repo. This way we are very sure it works, at any time.
* It is now also possible to have the same attribute node in multiple config files, they will get deep merged.