server/: Build a proper interface for handling tunnel classes.
* Introduce functions for enumerating the available tunnel types,
looking one up by name, and returning a default tunnel. This
eliminates the direct access previously used by the admin code.
* Introduce a registration interface. This isn't necessary for our
purposes, but, in case it's not been obvious enough, the recent
changes have been directed towards making the server code suitable
as a library, and a user of this library might well need a custom
tunnel class.