Renamed formats to formats_whitelist for consistency
Grouped 'repo' macro arg with related args
Generate state IDs so multiple formats/versions won't conflict
Use macro if certain Pillar values are defined
Pass the clean argument through
Don't fail requisite if clean command fails

Unsure if we want to store translations in the Salt repo or in
individual repos. Punting by supressing error message.
Generate the correct build_dir name
Fire a custom event after a build