Added AzureCredentials class - handles azure service principals
Refactored the code to use AzureCredentials.ServicePrincipal instead of each individual credential parameter (subscriptionId, clientId, secret, token, URL)
Agent templates use password credentials (Matt's work)