refactoring + board model and list