Fix measurement unit overlap with abbreviation
This pull request fixes an issue with overlapping tokens in tokenizer.py. The issue is that the tokenizer first splits on all measurement units and afterwards on abbreviations. However in the case of overlap between measurement units and abbreviations e.g. due to custom additions to the units.txt or abbreviations.txt, the abbreviation cannot be handled anymore.
Concrete example:
In Abs. 2 S. 4 beschreibt der Autor das Balzverhalten von Einhörnern.
Conflicts between custom abbreviation for sentence references S. and unit s (seconds).
Similar conflicts may arise for all other units that may double as abbreviation and appear in the context of digits or numbers. Since no unit in units.txt has a dot . as suffix, we can use a negative dot lookahead to differentiate between units and abbreviations and resolve such conflicts. This will break if units with a dot get added to the units file, but to my knowledge that scenario is unlikely (but should be documented somewhere).
I see there are some issues with the tests now, i. e. sentences ending with a measurement unit such as "[...] km/h.". I'll think about a fix to that problem and will edit my PR accordingly.
Yeah, this would break things like "Es sind noch ungefähr 5km." At a first glance this might turn out to be tricky.