Puppetfile: New lens to parse the Puppetfile format

Apparently `1.2.x` is part of the spec for semantic versioning (news to me).  Perhaps be less strict about the contents of do_quote?