generate a path by which to send layout engine options

I am not sure that there is anyway to always predict the best column
width for any given pdf, to that end I created a way to pass a fudge
factor off to the layout engine.
Additionally I added a check to the layout engine that emits a warning
on stderr if a problem might occur.
Activated TrueType width calculator

The TrueType width calculator was essentially unused, and was being set
to TypeOneOrThree width calculator, upon activating it, found an error,
I fixed that as well.
Migrated merging runs to page_text_receiver

moved the methods to merge text_runs out of the page_layout and into
page_text_receiver. This allows the text_runs to be cached and
accessible if needed in user code.
created class GlyphPosition

Created a GlyphPosition class, which more accurately reflects what is
going on in the pdf. TextRun now wraps an array of GlyphPosition
elements, and the attributes of the TextRun are pulled from the array
of GlyphPositions.
Fixed character spacing Tc so that it works properly

Tc (and Tw) wasn't implemented in a way that generated correct results.
Added a bunch of notes (in code) and created a spec for testing
results. The pdf file has lines in it spaced at 0pt, 144 pt, 288 pt,
and one other place. the width of the wide character spaced string
should be about 277.