added a RoomWithWalls and did some refactoring.