scala.tools.nsc.typechecker.PatMatVirtualiser
Make a TreeMaker that will result in an extractor call specified by extractor
the next TreeMaker (here, we don't know which it'll be) is chained after this one by flatMap'ing
a function with binder nextBinder
over our extractor's result
the function's body is determined by the next TreeMaker
in this function's body, and all the subsequent ones, references to the symbols in from
will be replaced by the corresponding tree in to