revise HCAgent, got it working efficiently, revise printBoard to accept up to 30x30 boards