Don't create dicts but use real objects as temporary participants.

This solves an issue with filtering for the participants tab. Fixes #583.