Since moving the highlighting frontier forward when doing things like getTokenAt is not safe at all. Also properly update highlighting frontier when a change happens.