[SPARK-4268][SQL] Use #::: to get benefit from Stream in SqlLexical.allCaseVersions

In addition, using `s.isEmpty` to eliminate the string comparison.
Why is this better?  Because its lazy?  Given that these are all materialized eventually the possible benefit seems dubious given the drop in readability.  (Please correct me if I'm wrong).