Update from internal code
Initial puppet module code drop