Proof-of-concept code for using "variables" in filenames to decide which file will be symlinked to. I haven't bothered with any optimizing or extensive testing, so you mileage may vary.

- Append # to filename and then your variables separated by commas. Currently supports os, host and user.
 For instance, .gitconfig#os=Darwin,host=host1.example.org
- But what if you have one file named .gitconfig#os=Darwin and another named .gitconfig#user=iron8core and both matches?
Right now it uses a score system, where system is 1 point, host is 2 points and user is 4 points. Those are then added and the file
with the highest score will be linked to.
Merge branch 'release/0.1'