Engine-XMPP: wasn't able to close unsynced (not fully joined) mucs

in case of long delays this could easily happen
also, regression-danger due to nonexisting chat windows that the server might send messages for
Engine-XMPP: a server<->client race condition could cause a closed chat to be joined

now this kind of chat is automatically closed and an error message is displayed in the protocol chat
this required a refactoring of OnGroupChatPresenceError because that function expected a non-null XmppGroupChatModel
Merge pull request #160 from oli-obk/fix/remove_unsynced_groupchat