Merge identifier variants whilst keeping compatibility.

This will smoothly migrate all identifiers to V2.

Fixes #56.
Fixes #79.
Fixes #149.

This will need to wait for some ci tests.

Sorry, realized you were asking a different question. No particularly strong reason, for static method, just what was there.