board class added with tests