Can you explain the concept of Infrastructure as Code (IaC) and provide examples of tools you have used?