Only allow one answer per user and task

Sometimes apps do starnge things, esp. if the network is a bit slow / unreliable, and we might get duplicate responses from the same user for the same task.

I have fixed that in our apps, but also added a server side guard against this problem. This is that server side guard.