Begin considering Instances-as-namespaces.

Do a little bit of work about that. A problem is revealed: when
importing an Instance which uses some user type in its public API, we
must import the type. But then, what if that type is also used in the
top-level context (or some other Instance-as-namespace library)?

Solution: we must abandon the idea that a C++ type has a unique name in
Yang. Begin removing that assumption, starting with getting rid of
NativeType (which turns out to be a bunch of uselessness) and replacing
it with something simpler.