Rework highlighter to be async compatible.