Blueprint templating enhancements

Blueprint inputs can now be typed lists. A blueprint can use them to fill in installation settings such as env vars, variable groups, domains and autoscaling triggers. You can also add a condition to an env var or variable group, so an installation uses it only when the condition is met.