Improving Performance

Implemented explicit caching class.
Some tweaks to the ordering to improve alpha-beta pruning.
Added performance metrics.

Also some minor performance improvements.