lex it up

It's time for a lossless unit file format for our APIs, so here's my first attempt. 

This code started life here: https://github.com/coreos/fleet/blob/master/unit/file.go