Refactored how configurations are matched
Refactored git-state print

Configurations with overridden values are no longer duplicated in the output. Like git-config, only the value with most precedence in printed.
Updated documentation
Implemented pretty format for git-settings print

Also add git-settings.print.format configuration.