truncate and truncateWords can now preserve HTML

new private method `truncateHtml` now used by `truncate` and `truncateWords`