Convenience function to gathering candidates and votes and
        performing voting using them.

        Additional ``**kwargs`` are passed down to voting method.

        :param voting_method:
            The voting method to use, see
            :meth:`~creamas.vote.VoteOrganizer.compute_results` for details.
        :param bool validate: Validate gathered candidates before voting.
        :param int winners: The number of vote winners

        :returns: Winner(s) of the vote.

def gather_and_vote(self, voting_method, validate=False, winners=1,
                        **kwargs):
        """Convenience function to gathering candidates and votes and
        performing voting using them.

        Additional ``**kwargs`` are passed down to voting method.

        :param voting_method:
            The voting method to use, see
            :meth:`~creamas.vote.VoteOrganizer.compute_results` for details.
        :param bool validate: Validate gathered candidates before voting.
        :param int winners: The number of vote winners

        :returns: Winner(s) of the vote.
        """
        self.gather_candidates()
        if validate:
            self.validate_candidates()
        self.gather_votes()
        r = self.compute_results(voting_method, self.votes, winners=winners,
                                 **kwargs)
        return r