Implement CROSS JOIN

CROSS JOIN is really a simpler version of JOIN where no join fields are
specified, so we treat it that way at the compile step and don't need to make
any changes to the evaluator. We can't just parse it into "t1 JOIN t2 ON true",
though, since I need to reject that syntax normally at compile time.