Better User signature

Moved the user signature stuff into `GTRepository` and gave it some reasonable defaults. The move to `GTRepository` is necessary because we might not have any configuration for a repository, but we'd still want to be able to get the default user signature.