Pre-calculate the room name and store it in room.name.

This also serves as the binding point for $scope so updates to the room
name are reflected immediately. Previously, the logic in the mRoomName
filter may have resulted in a new name, but angular had no way to know
of this because scope variables were not updating.
SYWEB-171: Scroll to the bottom for all types of displayable events (e.g. m.call), not just m.room.message.
Fix user display name for emote/membership changes/room name/topic changes.
No longer skip tests which were known broken.
Dismiss the room info dialog when leaving a room.
Add dialog service unit tests.
Add recents controller unit tests.
Add orderRecents unit tests.
Add more registration unit tests.
Standardise how rooms are created rather than using a mix of approaches.
Add home controller unit tests. Standardise the room paths we move to.
Actually add the unit tests.
SYWEB-144: Update title of window with number of unread messages, incl unit tests.
SYWEB-100: Treat /commands as case-insensitve. Add regression test for it.
SYWEB-79: Handle rate limiting and wait the specified time, up to a configurable max wait time. Add unit tests for this.
SYWEB-181: Fix scrollback to show messages when joining a room.

Handle room initialSync messages correctly rather than discarding them.
Remove the 'first pagination' logic: it is no longer required due to
room initial sync.
Add regression test for SYWEB-181
SYWEB-75: Show desktop notifications for inbound VoIP calls.
Merge branch 'develop' of github.com:matrix-org/matrix-angular-sdk into release-v0.5.1