use receiveTime instead of time as the primary key for roost messages

So, it turns out that header-time in zephyr message is just something
filled in by the sending client and not guaranteed to be monotonically
increasing in your received zephyrgrams!  Who knew?  (Well, I did. *sigh*)
So let's try using the roost receivetime instead because that should be
more like monotonically increasing.  Should fix #34.
turn on parser debugging in tests
handle escape properly in string literals
handle string representations of comparisons properly
ignore the parser debug droppings
cleanup after parser in debug mode
fix editor.textrange (which was breaking character_at_point)

editor.textrange failed badly when begining of range was after the end of
the gap, which was causing character_at_point to return all the text from
the end of the gap to the point (inclusive).
Start to rework towards selective logging