Add form builder and the basic form workflow

also add the implementation of all form field types. The form will save
the submitted data to the database (using the FormSubmission) model.