Recruit more participants.

def recruit(self):
        """Recruit more participants."""
        participants = Participant.query.\
            with_entities(Participant.status).all()

        # if all networks are full, close recruitment,
        if not self.networks(full=False):
            print "All networks are full, closing recruitment."
            self.recruiter().close_recruitment()

        # if anyone is still working, don't recruit
        elif [p for p in participants if p.status < 100]:
            print "People are still participating: not recruiting."

        # we only need to recruit if the current generation is complete
        elif (len([p for p in participants if p.status == 101]) %
              self.generation_size) == 0:
            print "Recruiting another generation."
            self.recruiter().recruit_participants(n=self.generation_size)
        # otherwise do nothing
        else:
            print "not recruiting."