what state are you in?
what's the license # of the roofer?
tell him you're going to go to the licensing board and have his license revoked if he doesn't fix it...
if he says he won't tell him that you'll get a 3rd party company with video camera to video the Tear Off ... and when there are old nails, debris, etc... and you show it to the licensing board, at a minimum he'll get seriously spanked.
Buy a URL with <roofername>sucks.com and show the pics on it... and call him up (this will cost you $15, and some time with front page). Tell him that you're going to pay Google Adwords $15/month for roofer in his area unless he fixes it for free.
Tell him you'll pay a flier company in your neighborhood to pass out pics of his work and your website about how he sucks unless ...
Tell him you'll go to Service Magic, BBB and ANGIES LIST and complain --> pointing to your URL.
Run a background check on him (about $100) and find anyone else who has had a bad experience and get them to join you.
Next time, don't buy on price. Buy from a CERTIFIED roofer. go to www.Certainteed.com
and buy from a SELECT roofer - if you had done that Certainteed would be OBLIGATED to pay for worker install error (had you bought the 5star warrantee)