Basic idea behind software is to have one directory where all profiles reside. Then there is sub-directory for each profile and there are files needed for profile-change.
Example:
Profilename is "homenet" and master-directory is "/etc/netprofiles". So layout goes like this:
/etc/netprofiles | homenet |--------- homenet.hosts |--------- homenet.ifcfg-eth0 |--------- homenet.network |--------- homenet.resolv.conf
And when user executes script, it just copies files to place and restarts network. Very simple thing and very usable, at least for me ;-)
Samples:
Henry Palonen, 2000