Order..locate(): all option returns all matching values, this is used by the join pipelet
join.js: implement distributable joins using half-joins, code generator; supports right, left, and outer joins; almost complete WIP