Any reason not to start with static functions, as you tried in https://github.com/whatwg/encoding/pull/284?