Refactor Board to separate interface and implementation.