Island detection while creating surfaces from curves

I’m thinking about creating flat surfaces with holes in them from a given set of curves. Basically I would need to detect ‘islands’ in a list of curves. Once I have isolated the islands I could create a separate geometry and intersect the surrounding surface to get the hole.

Am I overthinking this? Anyone beat me to it?

Have a look at these posts:

http://dynamobim.com/forums/topic/floorbyoutline-to-create-multiple-floors-on-various-levels-use-2-list-question/

http://dynamobim.com/forums/topic/floor-openings-floor-by-multi-curve/

Thanks Paul, looks promising.