When I design a template based on the link you provided, should I create all the pages in one .config file or should I separate each page into its own file and name the .config files in abc sort order of creation?
Either way works so its a matter of personal preference but I generally use a file per page.
Whatever features you declare on pages in your config file are the only features that will be installed (except maybe html feature may always be installed). So if you want the site to have more features then you have to add them to the site after creating the site. This is done from site settings page in the root site, select child site from dropdown list and see where you can add/remove features.
If you add a feature to a site and they use it to create content and then you remove the feature from the site, I "think" existing instances still work but no new instances of the feature can be used.
I have it on my radar to implement a site provisioning feature that would allow users to create sites on demand according to various configured rules and one of the options would be to have ecommerce purchase, but I have so many things on my list I have no idea if/when I will get to this.