add new wildcard features

* "custom" wildcard sets can be embedded inside tokens, e.g. instead
of --custom-wild abcdef and then token%c, just do token%[abcdef]
* custom wildcards (--custom-wild or embedded) can include ranges,
e.g. %[0-9a-f] or %i[0-9a-f] (for case insensitive)