Change how the parent constructor is called when extending objects

This is so we can monkey patch the parent's constructor later on and
still have it be called by extensions of the base object.