Refactor vksprintf method to BaseFormatter and add

a bit more documentation to the settings writer classes.
Fix typo in shell template to make tests succeed