Finished everything except the "smart" AI