https://blog.libove.org/posts/cdd98eb5-a1e7-4bcf-bf34-345ebcf20c44/
Implemented edge flip for corridors. For each cell which only has horizontal or vertical neighbors the edge between two cells is flipped. This works great but there are some edge cases that still need to be handled.