Make getMulitipleRecipientServiceAddress() more robust

the method should not throw if one of server's items fail to query.
Improve getMultipleRecipientServiceAddress

and MultipleRecipient (XEP-33) related code in general (e.g. use
constants where possible).

For getMultipleRecipientServiceAddress() this means that
- the "synchronized (services)" block is removed
- ServiceDiscoveryManager is only retrieved once
Add missing mechanism-too-weak SASL Error