New completion model

This introduces a more sophisticated completion model with notions of "completeness" and "exhaustibility".

This will be needed for help on completion.