Option to make registration need invitation codes
It would be useful to have the ability to require an invitation code for someone to register an account, so that we can have a compromise between closed registration and open registration.
Motivation
Traditionally, projects have offered this for Synapse with an external web service that uses Synapse's shared secret registration mechanism, but this is not very ergonomic for new users who are already going to be confused about Matrix.
It would be well within Conduit's scope, given that it's especially suitable for small-scale homeservers.
Thoughts for implementation
User-interactive authentication (UIA) is likely the mechanism that we should use; we should add it as an extra UIA registration step.
As no clients will support our UIA step, we should also have a simple web fallback form. (We may want to open an MSC and standardise some 'Question' or 'Invitation token' UIA step in the future?)
Rocket's support for forms should be useful.
N.B. I'm happy to take this on myself, but I'm busy at the moment so it may not get done for a few months.