added task dispatching
split api into api and ipc
added trie and selection logic
added trie and selection logic (added missing files)
process suggestions and send to atom
moved all providers into one process