added room creation, some small design changes