make config fixtures packages
.gitignore
improve writing sample config files

configs are now filtered by alias so that each file only contains the
values defined for it instead of all parents.

now packages with multiple file aliases can write all config files.