Added Quiescent search, refactored PV search
-Quiescent search now called at max depth, not eval.  Big boost in performance from this.
-Adjusted PV, seems to have better performance now
-Removed game tree from GUI and stopped maintaining it in the backend in an attempt to reduce memory footprint, since I don't need it anymore for development.  Will add a "Pieces captured" view in its place.
-Fixed bug that was trying to let pawns capture off the side of the board
-Modifed how the engine handles pawn promotions, as it was letting them move to the 1st or 8th rank and didn't know what to do that that point.  Now when a pawn moves to those ranks a PawnPromotion flag on the move is flipped, and the engine will consider it as a promotion to queen (will add promotion to other pieces soon, very easy to do).
-Added small reporting counters, such as branching factor.  Most are commented out but can be uncommented and are working.

Performance is still not where it needs to be.  Memory management is a huge issue, as ply 4 games often crash because the GC can't handle it anymore.  More research needs to be done on this so that the engine can look deeper.  Bit boards/transposition tables would help but will be a challenge to implement.  Null Move heuristic is another thing I need to implement, but still unsure of how it fits in with PVS/AlphaBeta/all the other algorithms.