resolves #417 update xref to support interdocument references
make refid lookup smoother
Merge pull request #570 from mojavelinux/xref

resolves #417 update xref to support interdocument references
resolves #575, #572 and #581 refactor reader to track include stack

- split the Reader into Reader and PreprocessorReader
- maintain an internal stack of include contexts
- report file names with line numbers
- rework reader tests
- rename several reader methods to be more intuitive
- optimize operations in the readers
don't dup on peek_line; cleanup comments
fix broken tests; remove get* varient of read* methods on Reader
introduce Cursor object to track line info

additionally:

- rename take_* methods/symbols on Reader to read_*
- fix missing direct logic on peek_line
- add rdoc
move registration of include to push_include