If it is found - fine, we got it. Found and is a directory - create an empty directory with the same name in overlapping fs. If not found - just go ahead and act as for normal filesystem. That is, in that directory and all its subdirectories we are acting as for the usual mount - no lookups into the underlying level.
All modifications go into the overlapping fs.
You can put an additional layers atop of it, indeed. Once you got a file - you got it. I.e. if you reached a file with no overlapping counterpart and opened it for write - you've opened it for write. Or does the location with the See above. Mount should be taught to deal with the new flag, fsck should be taught to that whiteouts are valid entries.