refactor, split out board, comments

more tests, weird exeuction stuff