simplify the board interface and clean up requires