Fixing bug in participant report
Fixing warning caused by change to consent record

When checking whether a participant's withdraw_letter has been set
before adding a new consent record the participant_id is not always
set.  This was causing warnings in the log.
Tweaking last commit (using better logic test in if statement)
Final fix for consent::save() bug
Restricting participant active status to adminsitrators only
Fixing bugs
Fixing bug and tweaking states

The state record has a rank in it, so it now extends the has_rank class.
The role_has_state table how cascades on delete.
The number of participants using a state is now included in the state
list and view.
Merge remote branch 'origin/qa' into release
Adding first and last name to user list
Tracking old email address when email address is updated
Merge remote branch 'origin/release' into develop