move ai to a seperate module