Unicode: add back `notnl`

Matches any UTF-8 character except '\n'.  This is what re2 does.
Unicode: improve tools/gen_unicode_groups.ml
Unicode: fix typo in `compile`

`any_byte` => `any`
Revert to old behaviour of {no_}case wrt char sets

This is in preparation to implementing case, no_case
for unicode using simple_case_folding (which is a 1:1
mapping between unicode characters).