Add a (tentative / first cut) of an executable specification model.

This adds an ecore model (+ diagram in source and PNG form) of
a specification language / model that can be used to describe Puppet
Language assertions / expectancies of parse results (resulting AST tree,
and validation/diagnostics).

This model is experimental at this point.