Only wait for the current user's project authorizations to be refreshed when creating a project
Per discussion in https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/13564#note_38168804
When creating a project, we currently refresh project authorizations for every user in the same group (or parent group) as the new project, and wait for all those to complete before returning from the API or controller.
We're waiting at-all so the requesting user's permissions are (almost) certain to be in place before they are told the project is created. This means that we don't need to wait for users who aren't the current_user
to have their permissions refreshed.
In the project create case (and anywhere else?), we could just refresh that one user's authorizations immediately, inline, without going to sidekiq. The remaining authorizations could happen in the background.
This should also make the authorization component of project create calls much less variable - about 20ms (locally) no matter how many members are in the group.
Are there downsides?