This struct was just a container for two pointers and just made things
painful. This structure has been removed and the next pointer has been
moved to the Token struct.
Also, add a null check to the calling context after NewLexer().
- Parse code blocks that are wrapped sets of three backticks.
- Added a TT_TRIPLEBACKTICK token.
- Added a length field to the Token struct.
- Added an error node.
- Cleaned up some file read code.
- Fixed the header raw text (don't reuse the same buffer for each node).