restructure: refactor Board.js