This is the new implementation of epsilonlex, the third one.
It's both cleaner and (much) faster than the old implementation.
