F/collectd dsl from hash

This amongst other things makes the `settings` useable with hiera (without pasting pseudo-xml-liboconfig-collectd).

TODO:
* `recparse` should probably make it somewhere else
* add some rspec