Add foundation for phpunit test framework
Implement test and fix for half-move calculation bug
Requirement of PEAR.php changes

These changes were done as a temporary workaround to solve nagging
errors about loading PEAR.php when unit testing via PHPUnit:

	* Add global require_once line, with hard-coded path
	* Remove extraneous checks for PEAR.php existence and loading
Fix merge conflict
Remove unused factory method

The factory method contains references to game modules names as
Games_Chess_$type and Games/Chess/$type, which are no longer part
of the repository (prior commits by other developers removed them).

It is therefore deemed safe to remove references to those modules and
the factory class that was loading them.
Fix broken error raising
Fix horribly broken isStalemate() logic
Fix invalid constant name
Fix horribly broken inBasicDraw() logic

Some of the array operations were attempting to take black on
sub-arrays that didn't exist, therefore causing PHP to throw
undefined index errors
Fix horribly broken getMoveListString() logic

The method locked to see if withChecked was set and, if so, then
got the moves list with the checks. The problem is, it immediately
afterwards, regardless of withChecked status overwrote the moveList
with the non-check version of the moves.
In progress - at 79% coverage
Remove unused methods

_getColor()
isBishop()
isKing()
isPawn()
isRook()
Tests to 84% Coverage

This comprises the bulk of the main processing, save for some edge
cases, cases where there are specialized situations (Chess960 for
example), and situations where I just haven't yet figured out how
to get to.

Nonetheless, this should be a good place to begin refactoring