For DVCS, either merge or rebase works for getting new code in a pull
request in the main branch.
The rebase workflow produces a linear history which is cleaner, and
more bisect-able.
This commit adds a repo-level option to enable the rebase workflow. Once
enabled, "Merge Pull Request" will be replaced by
"Rebase and Merge Pull Request" which does exactly what the user wants.
It's unlikely a project wants a mixed-use of both rebase and merge
workflows, therefore the feature is not implemented as a drop-down
button like what GitHub does
(https://github.com/blog/2243-rebase-and-merge-pull-requests).
* Add API endpoint /api/v1/user/orgs
The difference between this endpoint and
/api/v1/admin/users/<username>/orgs,
is that here you're creating a repo with the `user`
that corresponds to the API token you're using.
* Extract duplicate API org creation