Cloudformation template to create an AWS VPC allowing you to choose how many subnets require, private or public subnets or both. If you select to use the private subnet you can choose to use a NAT device managed (NAT Gateway) or NAT instance based on EC2