Agent penalties

I'd rather have a specific model to represent queue-agent member and another to represent queue-user member. Because in a context of queue-agent member, the agent_id really is mandatory. The same applies for queue-user member. But the code is saying that they are not mandatory, which is not true. So IMHO, you should rename QueueMember for QueueMemberAgent.