The connect method will create a connection object based the provider type passed in If provider is left blank the function will use the first available provider
gets data from the bmc device and puts in a hash for diagnostics
Return true or false if the provider is available
method used to find the command which also makes it easier to mock with
returns true if any of the providers are installed
returns boolean true if privilege type is valid
[Validate]