refactored parties, added leaving ability