* Can now play against a computer.
* Defined some strategies for computer players to choose moves.
* Trying to implement this in a more functional style to avoid
  incidental complexity.  Boards are now immutable - Board.move()
  returns a new Board instead of modifying it in-place.  The main
  objects only expose read-only access to member attributes.
  Considering making Roll read-only as well.  Points are still mutable
  via push() & pop() as well.