Add a completion API
Plumb through more completions