Service configuration is currently done via the Whirr properties file by using a special per-service prefix (e.g. 'hadoop-common'). Using a templating approach (using e.g. Velocity) would make changing properties more familiar to users, and would make it easier for service implementors (since they wouldn't need to implement a generator class for each configuration file).
It might even be possible to support the old syntax (so users can still configure everything from one file if they wished) by, e.g., appending all properties starting 'hadoop-common' to the core-site.xml template, etc.