More groovier.

Here it comes!
Till `inject` I suppose it's pretty clear. You can replace closure with:

`inject(coffeeShop) { result, node -> result[node.@k.text()] = node.@v.text(); return result }`