19105 - default_discovery_method and others isnt correctly handled by the RPC::Client

Previously we used settings like default_discovery_method before
actually initializing the settings and so they would be set to nil

This caused a few hard to detect issues like discovery being used for -I
discovery flags that supplied a specific host where normally it would
use this information as discovery data

This re-arranges things a bit to start the code Client early on in the
RPC client initialization