ExitError conditions now return a plain error with message like:
Error running git [config --system filter.lfs.clean git-lfs clean -- %f]: 'error: could not lock config file /etc/gitconfig: Permission denied' 'exit status 255'
Also:
* Made Set/Unset Config commands return errors when they occur.
* Made install attribute set fail properly with an error message e.g. if permission-denied. Previously this failed silently and reported success.
***NOTE*** this commit contains Go 1.6-specific APIs. The following commit will remove those, and that following commit can be reverted when Go >= 1.6 is required.
The old `Filter` type represented a far too specific type of attribute.
Instead, a generic alternative called `Attribute` is favored, which more more
closely matches the type of structure defined in
http://git-scm.com/docs/gitattributes.