Accessing illumination of face/polygon in python API
It seems to me that what I asked is not easily done. As suggested by @maddin45 you can use baking. This looks complicated to script and I discarded this idea. The other suggestion of using Radiosity Rendering is out because Radiosity Rendering does not seem to be available in the newer releases of Blender.

My solution is to use ray casts. By casting a ray from every face towards my light source(s) I can see if the light source can be "seen" from that face, or if it is blocked by the structure I'm manipulation. This is a very simplistic approach to figure out something about how much light hits the face. The approximation can be improved by calculating the area of the face and taking the difference between the face normal and the vector pointing from the face centroid towards the light source into account. For my use this seems to be working quite well. Which is to say that it seems to be fast enough and accurate enough for my use. 

I welcome any other suggestions for doing this.