[Feature] XMPP javascript client plus ruby (vines) server

Open :

- [x] ~~mixed content; writing reverse proxy for rails application?!~~ using webserver as proxy solves it
- [ ] design tweaks (smiles are broken)
- [x] login with user credentials from external (authentication works; something else broken?!)
- [ ] pod federation (was not tested yet)
- [ ] make jappix text translatable 
- [x] ~~history / offline messages~~ that depends on the client (jappix)
- [ ] write huge amount of tests .... nooooo :(

(to be extended)

**I as a Pod Maintainer, what do I have to configure to make that work?**

* Apply the patch
* If you are using ssl
 * Apache: https://gist.github.com/Zauberstuhl/2d09330961614b12b642
 * Nginx: https://gist.github.com/Zauberstuhl/ee95e1eacefa6ddbec6e (no tested)
 * un-comment the bosh server variable "bosh_url" in diaspora.yml
* Restart diaspora

That was the magic!

**Your XMPP server sucks! I have my own already running!**

* Set "server" variable to false in diaspora.yml under chat section
* Follow the web-server configuration above
* Make sure the bosh url in diaspora.yml and of your xmpp server are the same
* Restart diaspora

**How can I add user/friends to my contact list?!**

Diaspora has standards like XMPP presence:

* both parties are not sharing with each other (equals XMPP 'none')
* you are sharing with the contact but your contact doesn't (equals XMPP 'to')
* the contact is sharing with you but you doesn't (equals XMPP 'from')
* you and your contact are sharing with each other (equals XMPP 'both')

Jappix is only displaying "online" contacts and you can see the presence of the contact if you and your contact are sharing (XMPP 'both')!

---

~~Everything written under `lib/vines*` was forked from https://github.com/negativecode/vines
except for `lib/vines/storage/diaspora.rb` and some minor tweaks on the configuration process~~
We moved the xmpp server to a extra [location](https://github.com/diaspora/vines).
Also it would be very important to allow setting any values also via env variables - and I guess anything in diaspora.yml works. For example on diaspora-juju charm I'm setting all configuration as env variables, only copying a default diaspora.yml from the example. Much easier in automated environments :)