First pass at a FomElement

The FormElement extends Element to provide ready access to a form's
controls, and to allow the form to be submitted. It also connects forms
to their controls in situations when the DOM tree created does not have
the form element be a parent of the control, like when the form tag is
in a TR but the control in a TD. In that case the form tag gets
reparented.