Text this: Automated Bug Detection and Program Repair Using Deep Learning: A Comprehensive Review