[Regression] 32 bit compatibility for numeric ids

The big problem here is the `(int)` type cast in the `LegacyIdInterpreter`. This leads to unexpected results (negative numbers) on 32 bit PHP installations (which I happen to have for some reason).

Fix is simple: If it's a numeric string, just pass it. Sure, `is_numeric` doesn't check for whole numbers, but that's not a problem. The final validation for whole numbers is done by the `ItemId::PATTERN` and `PropertyId::PATTERN` regular expressions.