Scaling and extending AI classes

Re-adding my commit. Conflict with the json added by Ryan