Creates an instance of either {@link wpn.hdri.ss.client.tango.TangoClient} or {@link wpn.hdri.ss.client.tine.TineClient} or null.
Returning instance depends on which factory will succeed to create a client: Tango will try to create TangoClient and Tine will try to create a TineClient
Null client indicates that all factories failed to create a client, due to any error.
One can investigate these problems by calling {@link this#wasExceptions()} method.
@param deviceName a device name to which factories try to connect
@return new client (BadClient if neither factory was able to create a client)