* feat(workspaces): drop createdByUserId from the dataschema
* feat(workspaces): repositories WIP
* merge
* protect against removing last admin in workspace
* quick impl and stub tests
* add tests
* services
* unit tests for role services
* feat(workspaces): authorize project creation if workspace specified
* feat(workspaces): emit project created event
* feat(workspaces): assign roles on project create in workspace
* feat(workspaces): update project roles when user added to workspace
* fix(workspaces): perform automatic project role update in service function
* fix(workspaces): also delete roles
* fix(workspaces): broke tests again oops
* fix(workspaces): update `onProjectCreated` listener to use new repo method
* fix(workspaces): use service function in event listener
* fix(workspaces): get workspace projects via existing stream repo functions
* fix(workspaces): roles mapping in domain, use enum
* fix(workspaces): repair type reference in tests
* fix(workspaces): consolidate files, use different existing stream-getter
* fix(workspaces): more specific error
* fix(workspaces): yield per page
* fix(workspaces): some test dry
* fix(workspaces): superdry
* fix(workspaces): classic
---------
Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>