Understanding Virtual Base Classes Why The Most Derived Class Must Construct Them