Updated CQL parser to allow numbers as group names as well.

This will improve interoperability with the Lexicom Sketch Engine which,
like BlackLab, supports a dialect of CWB's Corpus Query Language.
Optimized group capturing a little bit.

BLSpans now keeps track of whether or not subclauses contain capturing
groups. If not, it will not call the whole subtree in
getCapturedGroups(), improving performance a little. Particularly
important for SpansInBuckets, which would store captured groups for all
hits even if there weren't any in its subclauses.