Refactored Subscription related cmdlts and added tests

* Refactored Account (2100040), Subscription (2100044), and Environment (2100050) cmdlts
* Added tests for all public methods on ProfileClient
* Added Add-AzureSubcription cmdlt
What if an environment is in the `AzureSession` only? For example, one that's added by reading custom profile file