Add procedure to get existing survey details

This procedure is needed for the ability to fill in default values
on a survey when a participant wants to edit it.
Add function for ag_get_survey_details procedure
Add utility function for adding default values

Useful for properly quoting values when using inline psp. Cleans up code.
Add procedure to get survey answers

Adds procedure, and a function to ag_data_access to call the procedure,
to get all the answers for a survey from ag_survey_answer.
Add functions necessary for survey editing

* Modified all functions that create extra fields (for "multiples"
questions) so that they now return the names of the fields that are created
* Add a parsing function that can parse the values out of a POST array (when
multiple form inputs have the same name, e.g., 'pet_default[]')
* Add functions to set default values for "multiples" questions
Add "edit" link next to survey

This page now pulls down all previous survey answers and adds them as
hidden form inputs. When the user clicks "edit", they are brought to the
survey and all their previous answers are set as defaults.
Add default values for answers, fix radio buttons

Fixes #471
Previously, the radio buttons did not have value fields, so responses were not
recorded in the database properly. Also, as with the rest of the survey,
added default values for all form inputs based on previous responses.
Add default values to form inputs

If the user is editing their previous survey, set defaults
Add survey defaults, fix pet and travel locations

Fixes #464
Fixes #472
Adds default values for all fields if it's a survey edit
Modify submission to account for survey edits
Merge branch 'master' of https://github.com/qiime/qiime_web_app into i286

Conflicts:
	www/americangut/js/american_gut.js
	www/americangut/participant_overview.psp
Merge pull request #474 from adamrp/i286

Add "edit survey" ability for participants