Correctly handling html character entities that follow a url

Before the html 

`<p>Joe went to yahoo.com&nbsp;and google.com</p>`

Generated the following output 

`<p>Joe went to <a href="http://yahoo.com&nbsp">yahoo.com&nbsp</a>;and <a href="http://google.com">google.com</a></p>`

This handles this case as well as properly handling &amp; inside urls (as part of the query string)

Approach is to split the html into parts separated at html character entities and process those parts separately. &amp; characters are handled separately in the UrlMatch code, which ideally should know if it's dealing with html or text, but currently doesn't.