Chef and yaml nicer

builds on #1249 (so do not review until that is merged)

makes it easier to add custom yaml type resolution, and uses that for chef, and introduces new chef config / mechanisms as described in the "chef seamless" proposal esp around startup