factor out data agreement code into mason component.
provide ids for the buttons in add data agreement dialog (for testing purposes).
require logins and curator or submitter status to add data agreements.
Merge branch 'master' into topic/add_trial_data_agreement