We are starting to get a bit off-topic with the sub-addon discussion, but I have to comment a bit on your code.
First, do not use __import__ as a variable. __import__ is already a built-in function in Python. You actually should be using either __import__ or importlib to load the sub-addons, and NOT exec. I have programmed quite a bit in Python over the last several years, and I can honestly say I have never used "exec". Not saying it doesn't have its place, but it should definitely not be used in this context.
http://docs.python.org/3/library/functions.html#__import__
http://docs.python.org/3.4/library/importlib.html
As far as data folders, I much prefer separating types of data from each other. Having one folder "could" cause folder name duplication. For instance, what if a custom package has data that it wants to put in a "player" directory. Then, we also have a "player" directory already in the "data" folder for the SP Python API. The files will get mixed in together, and that is not a good idea to me. I have always believed in proper separation of ideas and I don't think that will ever change.
Onto other posts. As far as why not "engines", the only place I have seen the default Python packages in a folder with that name is EventScripts. engines does not really describe, to me, what the folder actually houses. I guess, you are right, Omega, that Python 4 is probably further off than this project would need to concern itself with. Python3 or python3 would definitely describe what is in the folder, properly. I think capitalizing it will separate it from the other folders.
Satoon