I think you are missing one of the bigger frustrations with Shapefile - not only do you need multiple files to represent a single feature type but you also need one set of files per feature type so you can get an explosion in the number of files depending on your data model.