Introduction
We generate the forms by first gathering a list of all models in our database. For each model we pass it to formFromModel which creates a form from the model. formFormModel takes a model and builds a list of items. Each property has an entry in the list. Each entry is a dictionary with 'name', 'startvalue', and 'type'. And if 'type' = 'dropdown' then the entry will have values for whats in the dropdown menus. This is then past createForm which adds in the outside submit button. It then calls createItem on each entry. CreateItem takes one of these entries and builds a piece of the form such as the name attribute. Then all this is returned to the top level method which prints out the form.
On the other side of submit button we take all the information we got from the form and turn it into an entity. This goes through each value and grabs it from the form and puts it into a entity. We figure out which information goes where because the name of the forms are the same names are the model properties.