maze generator from griffpatch tutorial pen-based dead-end filling algorithm (prefers going straight at intersections, but will turn right from the direction it was coming from before checking the left side if necessary, so, if f is opposite the direction it was coming from when it found the intersection, then it will check f l r at an T intersection from the inlet, or will check f l/r if coming from the side path. at a four-way, it will essentially always check f l r) sounds from or modified from scratch library