broke board.js trying to improve it; repairs in progress
existing tests passing again