set list alignment to top

Ignore-this: 3382461a72d959c1db8401ba59c825c6

darcs-hash:20130903223011-c21fe-566e7018f82644f5dc3d705022e3d3a16739ed07
changed contact list in a session to be per app in session

Ignore-this: 18bb7017d2c7023afa54bc792a572847

The model is that each event in a session is over time. So when you add an app to a session,
only those people part of the session at the moment will be added to the app. if a person
is added to a session after the app is added, they are not added to all current apps.

Meaning each app has a static list of contacts who are connected. Contacts may disconnect,
but no new ones are added to the app.

The reason behind this is to simplify writing apps with this assumption. You don't have to worry about people joining an app after it starts.

This model may change in the future but it is that at the moment. So to better reflect this
model i made a contact list display per app in a session instead of one per session.

darcs-hash:20130905034521-c21fe-eb29a677c72074785b58a0e68eccdaa39f795985
fixed bugs in the display of user availability in contact list for an app

Ignore-this: d6313139d621d607ee6d51845b8e12b5

now a user is shown as red when he is no longer available for an app, even if they
are available later in the session.

darcs-hash:20130905050816-c21fe-969f7ab6e45e50b0eee484599a6928a95be91309