Checkout tabcomplete.js from master