severe refactoring, introduced a cell factory that produces different cell types rather than one generic cell; LevelService is now accessed directly and not via a separate instance