Configuration API refactor [WIP]

Not ready for merge. Work in progress for all to see.

This merge is strictly defining the Configuration class (from leankit):
Refactor all of ec-metal's configuration into an API
- config.json will still be an option (implement read)
- env vars included (remove from recipes and attributes)
- config objects will serialze into json for data bags

updating project to use data bag items is out of scope of this branch.