It strikes me that parts of a resolver could be coded as Mechanical
Turk jobs. This would allow matching algorithms to become really
sophisticated and leapfrog the various stages of improvement on a
pure-code strategy.
If you saved the results of the computation, so that you only had to
look up each mapping a few times, there would be economies of scale.