Attempt to move more responsibilities to the base element class.