Will now throw LibGit2SharpException with proper message when 'user.name...

...' or 'user.email' global setting is set to an empty value

When global user.name or user.email is set to an empty value, it will
now throw a LibGit2SharpException with proper explanatory message.
Previously it would throw an ArgumentException with obscure message:
"String cannot be empty\nParameter name: name".
All the null/empty value handling is within the `if (shouldThrowIfNotFound)` block. When that flag is turned off, the code you highlighted should still fall back to the defaults in case of null/empty values in settings.