refactoring everything to the Room class