Made the AI turn an async background worker and wired all of the code to work with it.  This paves the way for multithreading the background job.