refactor autocomplete a bit, make it actually work properly with keyboard
global search now loads only once and use local filter, no need to go to server each time