Add temp impl. for `consume_entity` and `consume_num` functions

- Add fully implemented consume_num function
- Add partially implemented consume_entity
Correct position change during peek

- Peek would increment position each time `read_nchar()` was used.
It now remembers and restores position.
Change visibility of `read_nchar`function

- Changed visibility of `read_nchar` function to visible to be
potentialy useful to other users.
Add field `eof`

- Adds field `eof` it's handling and tests for it.
- The field becomes true once EndOfFile error is encountered.
- The field will not become EndOfFile if the symbol was peeked using
`peek` function.
Add some doc to fields.
Rename benchmark

- Add a more descriptive name.
Add XmlReader benchmarks
Changed the way parser exits the loop

- Parser now breaks when EOF is reached or state is changed to a value
different than None.