Markov chain-style auto-completion using JavaScript n-grams