What trade-offs would you consider when choosing between Terraform, CloudFormation, and Ansible for a specific project?