I don't think this should return a SingleMachineProvisioningLocation (i.e. a `MachineProvisioningLocation`). It's asked for a single machine so it can return an `SshMachineLocation`. I think we can remove the dependency on `SingleMachineProvisioningLocation`.