Bug 1104139 - [Contacts] Refactor highlight so we can avoid using regexp (WIP)

we should keep this more generic, so we need to pass as parameters a string, an array of terms and optionally a class. as a result we will be returning a string that will contain the same text with the highlights in the required positions. normalized is something to be done in other module upstream