Adding ignore_extraneous validation option

By default the Form object ignores extra fields (= with no rules)
Setting this option to "false" will make the validation fail
if extra fields are present.
Adding support for global validation options

Previously, the validation options where only local to the
validate() method. Now they can be set globally for the entire
Form object.
Better handling of subforms

The default values are now passed to the subform upon validation