Renamed Checkers.Engine to Checkers.Core.
Fixed bug where getting moves only used current state.

Getting the available moves for a piece was always based off of the
initial state, not the state the moved would be made on.  This led to
exceptions when looking at moves several turns ahead.
Added version of minimax with heuristic and depth.
Added basic minimax search player.
Include all values in heuristic in end states.

Do not simply return a max or min value for an end state that is a win
or a loss, respectively.  This will make "better" win states more
attractive than "worse" win states.