some more cleanup of TextBlock
start work on attributed strings (definitely not finished)