It took a while, but I finally got it playing "decent." It desperately needs an opening book, but if you don't take advantage of its opening stupidity then it plays OK. It has beaten me a couple of times, even though it only looks one move ahead (this shows you how bad my game is of late). It is pretty slow. My code isn't effecient at all, but each move only take 1-2 seconds. I am not going to call it a success yet. I want to see if I can get it looking 2-3 moves ahaed and do some pruning (not look at move combos that are obviously bad). Then I need a simple opening book, the start of the game really kills its chances.
I have 2125 LOC and 1171 of it test code. One interesting note is that only 117 lines of the code are for the ChessPlayer.