(Collections) Initial collections work

Initial collections work.

TODO:

* Take care of some TODO's in the code
* Self-review
* Activity
* Searching collections (search permission integration is complete though)
Yes, as there are many places where we just want to generate test collections without caring about their visibility