Move logic from the generic_works_controller into the actor.
This also fixes #519 which occurred when you attempted to add_editor
using a Profile that didn't have an associated User (depositor was nil)

Now the add_editor/remove_editor functions only take User as an
attribute because it doesn't make sense to make someone an editor who
doesn't have an account.