Add ARM-7.puppet_types

This is the initial check in of a proposal how to define types
using puppet logic.

The proposal is unfinished and subject to change.