Implement JSON based git extension handler

One test needs to be refactored to work, so it's disabled for now.