ChefExtension support in the azure sdk toolkit

Contribution to the Azure SDK Toolkit from Chef - To support ChefExtension cmdlets.
Note - ClogenyTechnologies has a contract with Chef. We have signed the Microsoft CLA. This new PR has been created to accomodate the "rebase" after this repo had been restructured.
Original PR - https://github.com/Azure/azure-sdk-tools/pull/2576
I think the output type should be ```VirtualMachineExtensionContext```, otherwise the intellisense would be lost. In other word, you can't type the 'Tab' to see the return object's fields from ```(Get-AzureChefExtension).xxx```.