Changed highlight usages to work on a background thread rather than UI, also added disposal cancelation