Implemented a cache for board drawing. Board will not be drawn unless
necessary.