added cProfile analysis, removed update king location instances to improve performance, and a few other optimizations to efficiency