Just steal some parser stuff from aeson