add agent to changelogs and git commits

For archival purposes we need to track what happened, who did it,
and what software they used to do it.  This change adds an optional
"@agent" line to changelogs and git commit messages.

- dvcs.compose_commit_message that accepts agent string and formats
  appropriately.  Eventually this could be used to nicely format
  longer commit msgs (i.e. wrapping).
- Added agent arg to archivally significant DDR.commands.
- Mod the commands to use compose function.
- Mod ddr command to use @agent ddr-cmdln.

issue #112
add agent to entity changelog in entity_create