Added alpha-beta algorithm (both heuristic & state comparer)
- Created new package named "alphabeta"
- Added class to generate & sort child states (by heuristic value or by
the state comparer), currently using quick sort (but maybe we can
upgrade to bucket sort, only possible in the heuristic version)
- StateComparer's ComparisonException now inherits from
StateClassifier's ClassificationException (so player can switch between
them without changing error handling code)

!!!IMPORTANT NOTE!!!: **NOT** TESTED (bugs guaranteed)
State comparison alpha-beta player & fixes to alpha-beta algorithm
Major Changes:
- Tested alpha-beta algorithm with a new alpha-beta-state-comparer
player (seems to be working fine)
- Renamed other players to better fit their description

To Be Changed (very soon):
Redesign minmax, alphabeta, heuristic generator, state comparer
generator, and classifiers & comparers to be more general (i.e. better
uniform interfaces for: classifiers & comparers, all variations of
minmax, heuristic generator & comparer generator) so new players could
be easily created and key components easily replaced.
MinMaxException, AlphaBetaException unnecessary (can throw the
TransitionException and the like and they will be handled or thrown
again in the player)
Fix state-compare alpha-beta (removed unused terminal value)
Fix to Heuristics generator & alpha-beta functions
Merge branch 'alphabeta'
Merge branch 'alphabeta'