wave function collapse algorithm for cuboids with backtracking and entropy minimization, 3D and 2D versions. works by either matching edge content or matching arbitrary string labels for each cube face.