improve some assertions
add graph search solver. appears to be working for all test boards. filled out, verified test suite to come