[API] [Workbench] Home project should be a real object (group with group_class="project"), not current_user.
- Add default_project_uuid attribute to users table. Must not be null. Must resolve to a group with group_class="project".
- Create a new default project for each new user.
- Each user must be the owner_uuid of its own default_project_uuid, in order for "[read-only] group admin" feature to keep working.
- Default owner_uuid for new objects is the current user's default_project_uuid, not the current user's uuid.
- services/api/app/models/arvados_model.rb - general case restricts owner_uuid to a group uuid, not a user uuid
- services/api/app/models/group.rb - exception to permit a user uuid as owner_uuid should be here
- transparently change owner_uuid from current_user.uuid to current_user.default_project_uuid during model validation, in order to support old clients (but will any clients have problems when the owner_uuid is different from what they requested?). This should log a warning on the server side so we can monitor whether active clients have stopped relying on it.
- migrate db by adding a default project for each user (system_user's default project should be system_group)
- migrate user-owned objects to their respective default_project_uuids
- various clients will need updating