Multi-threading implemented, bonuses added
-Added two thread classes so the AI work can be done in it's own thread
and there's an AI progress thread that loops and updates a JLabel with
the AI's progress or tells the user that it is their turn.  This makes
the game WAY more responsive and the user can see what the AI is up to
without needing to see the console.
-Might be a few bugs around, the AI does seem to drop pieces
occasionally but it is still playing very well.
-Implemented the logic for connected rook bonuses and pieces moving more
than once in the opening.  The latter can definitely be optimized, it
was slowing the game down considerably so it is currently disabled. 
Lots of tuning will need to take place also since I haven't guaged how
much these bonuses are affecting the game.
GPL Added, refactoring
-Added Copying file with GPL, and the standard GPL message on each source file
-Added/updated documentation
Board flipping bug fix, refactoring
-The logic that handled flipping the board was not adjusting some higlighting logic, so now board flipping works as expected.
-Refactored some sections for readibility.
Refactoring, added check extensions to quiesecent search
-Updated a few places to use a boolean isWhite instead of a color string for "white" or "black"
-Added check extensions in the hope that the engine would see easy checkmates better. Haven't finished testing this though, it is still missing at least some
Added support for command-line arguments, fixed detection of easy checkmate
-Engine now checks for command line arguments of gameMode, depth, and a debug flag for ease of testing. More args to be added as needed
-Changed the initial alpha and beta values in pvSearch to be equal to the constant scores for checkmate.  The engine now sees mates it was missing before, it still might not handle all cases though, more testing is required.
Added command line argument support for log level, added enum for log level
Merge pull request #2 from mpvoss/Multi-threading

Multi threading