More various final updates

Some minor formatting cleanup as noted in the commits
added / consolidated some Util functions (shorten_text to Util, add strrpos capability, add shorten_html)
have likes return a message when limits are exceeded
compact the link name in html to MD now will be ```[Link](url)``` and not ```[url](url)``` if not actual link name or title is provided
Replace two occurrences of truncate with substr