OneSdk cmdlets

Here are list of cmdlets in this pull request (got the list from one of our "sync" mails)

Write-AzureSiteRecoveryVaultSettingFile (temporary)
Import-AzureSiteRecoveryVaultSettingsFile
Get-AzureSiteRecoveryVaultSettings (not planned, but it helps)
Get-AzureSiteRecoveryServer
Get-AzureSiteRecoveryRecoveryPlan
Start-AzureSiteRecoveryPlannedFailover
Start-AzureSiteRecoveryUnPlannedFailover
Start-AzureSiteRecoveryTestFailover
Start-AzureSiteRecoveryCommitFailover
Update-AzureSiteRecoveryProtection
Stop-AzureSiteRecoveryTestFailover
Resume-AzureStireRecoveryJob
Get-AzureSiteRecoveryProtectionContainer
Get-AzureSiteRecoveryProtectionEntity
Set- AzureSiteRecoveryProtectionEntity

Also includes functionality, framework, piping (at property level), exception & error handling with customized errors, writing customized PowerShell objects, with vault settings in memory, enable / disable protection has WaitForCompletion switch parameter, interrupt hanlding...

Please review these changes. Vault Key changes are yet to in.
all the client code (cmdlet business logic) files got prefix of PS (from ManagedCache)