The collection type you are describing is not supported very well by most off the shelf software programs. In Norway we have many genealogist that build studies from multiple singular event lists of 1,000s of people. For example a list of all persons baptized at a particular church over 100 years. This list (aka Database) is then cross referenced to another list for the same 100 years of marrage events, or death events, or census or some other event over a different 100 years like deaths, and residences, or confirmations, immgrations and emmigration at the church etc. All of these lists are then compared regarding names of the person the event was for or in the case of weddings and confirmations associations (godparents, witnesses) and from that, personas are built that eventually become people. I hope that makes sence!!
This is a long winded way of saying that this form of genealogy and data collection is very different than the way a lot of people (and software programs) move up and down in a relationship tree from child to parents to siblings ...
Most of the software I've seen for this type of collection is home grown and only is moved to FTM type programs after mounds of proof have been waded through and conclusions are generated.
This is also why you have found the need to create your custom facts. I think this is a great idea, and it would be aided if you could have a better associative data entry model.