solve lower corners
solve middle edges
solve upper edges
adding 1000 random tests; fixed some glitches that arose when testing