Partial refactor of Autowire routing

I don't think I'm going to get it down to minimal, but it's making
progress.
Cleaned up the code a little
We now allow separate handlers for different methods

This winds up with a little more boilerplate, but is going to be more
flexible, which I think I'm going to need.  Otherwise, we'd have no
great way of decoupling the handlers for different functions, which
we're likely to want.