Battling the Bugs: Virus and Malware Removal Techniques