refactoring continues, only walls missing