combine $from and $join into a single $from, and disallow join() without a from() first
add a package-level exception