InterfaceElementRow and InterfaceElementColumn now sublass an abstract InterfaceElementArray class, which implements all of their shared  functionallity