For reference - at the bottom of the page is the pretty good MegaBool script (dunno if it still works though, but the code is very robust IIRC):
http://wiki.blender.org/index.php/BlenderDev/BooleanDevelopment
The rest of the page details some previous work on new boolean functions for blender.
Additional I want to add to the original idea that it isn't necessarily needed for the script to create n-gons (in the first implementation) _but_ it should at least support it internally for future use.
See also: True Ngon Support
http://www.blenderstorm.org/qapoll/ideas/idea/61/