Fixed #19617 -- Refactored Form metaclasses to support more inheritance scenarios.

Thanks apollo13, funkybob and mjtamlyn for the reviews.
Fixed #8620 -- Updated the Form metaclass to support excluding fields by shadowing them.