[bug fix] Corrected bug with implicit visibility escalation

See test case comments for details. This wasted way too much of my time.
Added test case for visibility escalation internally

For completeness, since this is how I originally observed the issue fixed in
the previous commit.
Began testing class subtyping with mixins