Lockfile

WIP support for reading and writing the Puppetfile.lock