Move content of the "public" header into the implementation file.
This also renames two enumerations that were previously used through
rust_demangle:: scope, to avoid breaking a build bot with older
version of GCC that rejects uses of enumerator through E::A if there
is a variable with the same name as enumeration E in the scope.