Default values for both user.name and user.email

The previous behavior was to set default values only if user.name was
not set, but to always set it for both. This only sets a value if there
wasn't one; this fixes cases where someone has a user.name but no
user.email (see included Dockerfile) or someone has a user.email but no
user.name (before the email would have been over-written).
Set user.name & user.email in Dockerfile

The previous setting would cause all repo creations to fail, as
described in issue #328.
The previous commit also resolves this issue, but it seems saner to
create the user in the Dockerfile than at runtime.
Merge pull request #790 from euank/master

Initialize unset git user.email / user.name correctly; fix Dockerfile