Hmm, I think what I find confusing is the partial keeping of backwards compatability. I think I'd either remove it completely (after all its part of the `impl` package, so shouldn't we be free to remove it at our will) or leave it completely, i.e. not only the constant but the complete type, in case a user e.g. extends it (if this class effectively has become part of the public API).