Refactor parsing; use a lot fewer string slices; iterate the token directly.
Fix up structure finishing and string value parsing.