Performance and readability improvements
Lots of things.

- Added AlphaBeta
- Optimized away building a new chess board
- Chess Move has an all args constructor and no default constructor
- Added a branch count variable