Implement RoomView components and stores.

If the input argument body here is room info, would it make more sense to call it roomInfo? As of the moment body seems vague and non-descript, but we can go with it if that's preferred.