Refactor BaseForm, VariableArity as abstract property