not tested: separated xmpp parser and requesting roster