Almost there

Pulled print() on 2D matrix
added comments
changed Hole.setState() to Hole.pushed()
added a link back to the board in Hole
added Board.any_armed() - checks if any holes are in armed state
added Board.normalStates() - gets rid of armed and target states