Learning to Repair Software Vulnerabilities with Generative Adversarial Networks