Added Multiple instance support to all 3 clients #26
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.


Current implementation.
1.) For all 3 clients [CustomCheckoutClient, StandardCheckoutClient, and SubscriptionClient] only one instance object can be created irrespective of whether different merchant credentials are used to initiate a new client.
Updated implementation:
1.) We now allow initiating multiple instances for different sets of credentials, but we also maintain a cache of instances created for each new set of credentials. and make sure no duplicate instance is created for the same credentials.