Make the server more robust when forwarding call messages

This handles the case where a user has disconnected before a message is received that needs to be forwarded, e.g. onCallOffer. I've added some additional checking for the other onCallAccepted and onCallHangup as well, as its conceivable we could hit edge cases from time to time.

Suggest review from @tOkeshu