support the `tippee` argument of `set_tip_to()` being a `Participant`
optimize clear_tips_{giving,receiving}
fix atomicity of clear_tips_{giving,receiving}
Merge pull request #2480 from gittip/fix-cancel-atomicity

Fix atomicity of Participant.cancel() method