Description
We currently implement statistics propagation directly in logical plan. Given we already have two different implementations, it'd make sense to actually decouple the two and add stats propagation using mixin.
This can also be a powerful pattern in the future to add additional properties (e.g. constraints).