Solution for step 5.

Make sure to escape/un-escape delimeter and escape characters in the keys. The
code seems a little ugly for this but escaping escapes gets pretty ugly pretty
fast.