still need to add most options, but this is enough to be usable right now! This also sets up the work needed for other completion frameworks, notably things like nvim-cmp and compe.