Chat video implementation (v2)

I'm just going to push v2 commits here (rebased on your master) so that your original comments stay on #242. These commits here (starting from e6125a3) should fulfill your requests. Feel free to comment again here if I missed something.