[fix] Corrected stupid mistakes from last 2 commits #facepalm
[improvement] Improved the definition of ticket participants from maintainers to anyone who has reported, committed to, released, or commented on a ticket
[improvement] Gave ViewMailer the responsibility to reduce duplication in recipients
[refactor] Pulled TestingNote and Deploy notification handlers out of initializers and into config.rb to give finer-grained control over how they work
[skip] Added an id to ticket rows in the Testing Report
[refactor] Moved the definition of roles and project_roles to config.rb; dropped the "Contributor" and "Tester" roles
[improvement] Gave the User and Role dropdowns empty values to be their defaults rather than the first person and first role on their list
[fix] Created an empty role for new projects to make the nested form visible
[fix] Allowed the user view to load when Unfuddle is unavailable
[refactor] Renamed config.rb.* to config.*.rb
[skip] Added an id to project rows on the Projects page
[fix] Applied the full-screen toggles only on the Kanban so that ESC and 'f' don't tweak the URL on other views
[fix] Corrected handling of exceptions from invalid commits in Git repos
[fix] Restored tickets and showed an error message in the Testing Report if they couldn't be closed
[fix] Collapsed expanded tickets in the Testing Report before they are closed and prevented them from being expanded again while waiting on the server's response
[fix] Prevented the table in the Testing Report from reanimating dead rows (after a ticket has been successfully closed)
[skip] Prevented avatar_for from failing if user is nil
[skip] Updated TODO