port forward to Nocrypto and ocaml-tls

I've modified xmpp slightly to use Nocrypto instead of cryptokit (they're not interoperable, and ocaml-tls uses nocrypto) -- upside is there's a good RNG in Nocrypto (Fortuna) :)

Also, I ported it to use ocaml-tls instead of lwt.ssl -- this means it can run directly on mirage and does not use OpenSSL. I did this because the lwt.ssl didn't work for me.

I reorganized some code as well - moved sasl_plain into the Sasl module (which should be split out into a custom library imho), only use a realm if the server provided one, .... 

Also, the lwt test now sends a presence and outputs more debug.

Please let me know what you think about these changes.