Making survey more confugurable

* Added setup.py
* Updated the models to make the survey more configurable
* Added new field type
* Added options to the survey display (only for logged user, by question, etc)
* Added signal when a survey is completed