No you're the first to ask

the modding of AI works like this:
in the base directory of game now you have a additional directory "module" with two DLLs, one for the battle AI and one for the campaign AI, in the SDK directory you find the VStudio projects for both the DLL; you can modify them using visual studio express. The code is C++ but you don't need to be a professional C++ programmer to understand and change it mainly know the syntax and the base concepts, but of course is necessary to have good basis of how to program and learn to use the the functionalities of Visual Studio.
Inside the main .h file of project call different subroutines linked to the various game objects type: cavalry,infantry,artillery,brigade officer ,officer cavalry brigade,officer arty brigade,division officer ,ammo wagon,courier,army officer,corps officer, which are defined in unitglobal.csv.
The link between the routine called and the object type is done in a new csv file, unittype.csv which contains these links.
The campaign AI doesn't need links because it works only with officer sprites representing the army subdivisions, and the logic is event triggered (with in addition a 30 minutes time event triggered), not loop based.
In common to both the projects there're includes which contains the classes, constants, tables to use for the AI.
In order to create your mod you have to follow the same principle of old mods; you have to replicate the structure of directory "base" inside your mod directory, so inside the mod "alpha" at example you will need to insert a directory "module" and place inside your modded DLL.