removed dispatch_async
This should be called on main thread anyway and all of it synchronous anyway.
Extracted HR drawing from drawInContext...

There is a new method on DTCoreTextLayoutLine isHorizontalRule that is used to determine if a layout line is in fact an HR. If it is then _drawHorizontalRuleFromLine:inContext: is used to draw it instead. Also HR lines report their frame width as CGFLOAT_MAX so that they get picked up by visibleInRect. For drawing this is not used, but the width of the layoutFrame in the context view.

Fixes #305