Support custom properties on derived types

This is required to implement some interfaces like
Peas.Activatable.