Added support for CROSS JOIN in SqlExpression

While CROSS JOIN is generally something you'd like to avoid to use - there are cases where it is the right tool for the job. So I wrote some code to add support for that :)

Cross joins are however a bit different than the other types since it's quite valid to just do an empty "CROSS JOIN TableName" without any ON clauses, so I also had to go in and do some changes in InternalJoin. I'm not entirely happy with checking against the string "CROSS JOIN" in that method at one place though...but I figured it should probably be OK since the method is only called internally.

I also added two unit tests for using this functionality.