WIP: Port room sim
Port of room_sim_2d and room_sim_3d.
Once the build succeeds these commits should be cleaned up into a single commit.
Port of room_sim_2d and room_sim_3d.
Once the build succeeds these commits should be cleaned up into a single commit.