Use provided value when using generic method call

When passing a default value to a configuration method call the parameter must be a string to get correctly converted. e.g.

    var numberOfRetries = configuration.NumberOfRetries<int>("20");

This pull request allows you to pass in the requested type as a parameter. e.g. 

    var numberOfRetries = configuration.NumberOfRetries<int>(20);