Tons of refactoring, added collection autocompletion