Added FormElementProviderInterface and moved forms to make use of it