added input checks to solver, created boards directory for test boards, and added api