models.py:
- in Sample model, make site field required
- BUGFIX: in SampleParameterMap, sample & fcs_text fields need to be unique_together, else duplicate params are possible

views.py:
- no longer need project_id as view arg in view_subject, removed from url route and modified the templates

forms.py:
- update Sample model forms to require site
views.py:
- don't use @require_project_user decorator in view add_subject_sample, need to also account for site add perms

forms.py:
- update SampleSubjectForm model forms to take request arg to get the user site perms
views.py:
- don't use @require_project_user decorator in view select_panel, use site method has_add_permission instead

models.py:
- in Sample.save() don't try to add sample parameters if a sample already has any, else duplicates would get generated