We reworked MazeFactory from ex9 to a more generic implementation for a number of reasons.
1. It was heavily type bound which made substitution of allocators difficult at best
2. MazeBuilder understands the nuances of rooms, doors, etc so we removed it from the MazeFactory
3. We added a Allocator registration method.
4. We factored down the createWall, etc. and destroyWall,etc. methods. to xxxxxPart which requires the NameIdentifier.
In our sample, we create the maze and allow you to walk about