starting the SurfaceModule
reorganizing to have parent traits defined first (seems easier to read)
defining more details in the Surface modules
starting to work Surface logic into the RoomModule.