gitserver: Add runCommandGraceful
Created by: ryanslade
Allows us to run a command and when the parent context is cancelled, attempt to send SIGINT to the child process. This will allow certain commands to have a chance to exit gracefully.
Test plan
New test added