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
@huangpf -

Following are the valid scenarios:

1) ClientRb not given. 
1a - ChefServerUrl - mandatory
1b - ValidationClientName - optional
If not given, then OrganizationName is mandatory. Use the OrganizationName to form the ValidationClientName.

2) ClientRb given:
2a - ChefServerUrl - optional
If given, it will override the values mentioned in the ClientRb file path
2b - ValidationClientName - optional
If given, it will override the values mentioned in the ClientRb file path

Do you think we should still use parameter sets to validate the scenarios?