Update completion

* add tests
* fix completeness of completion
* add new types