Xfrout: improved use of threads

This is mostly a refactoring, and the final step before we get rid of sqlite3-specific data source configuration from xfrout.

In this change, a new XfroutResponder class is introduced, which is responsible for building and sending a response to a single xfr query.  Only XfroutResponder is now run on a separate thread.

XfroutResponder is generally implemented by moving related methods from XfroutSession, in which sense this is a kind of refactoring.  unit tests were adjusted due to the interface change, but the adjustments should be generally straightforward.