I successfully have a site working on server 08 R2 (SP1) running localhost. Have you checked under sites the bindings are correct? I.E. for default web site, should look something like: localhost on *:80 (http) or localhost on *:8080 (http), if you have checked this, then might I suggest changing the port from 80 to E.G. 8080 or something other than the HTTP ports - like 81 or 8181, this may help, but if you want 'outside' users to access your site you'll need to configure the Firewall (should already be configured for port 80 - but if you've changed it like suggested, you'll need to create a new rule for that specific port - and you may also need to configure an exception for that port in your modem or setup routing so that your modem will route that port back to your server.
I'd guess this could be the issue, or the other problem could be that somewhere on/in your server there is another program/application that has taken over port 80 and not allowing 'HTTP access' but is unlikely (as I'd guess this is a fresh or somewhat fresh server install).
I should've mentioned this before - the log that you supplied (The World Wide Web Publishing Service (WWW Service) did not register the URL prefix http://*:80/TestSite for site 1) indicate that the prefix *:80/TestSite indicates to me that the binding is incorrect. You may need to enter 127.0.0.1 to access your site unless you edit the binding and change to localhost (should be default but then again servers can go nuts ;)).
After checking this I'd imagine your issue should/could be resolved :).
I know I may not be making too much sense here, but this is from experience when setting up mine :), but I still have some bugs to fix :(, as mine is 'internet facing' ^^ with www.domainname.com :|.
Anyway, I'll leave it here and hope after confirming these things your server starts 'playing nice' :)
Hope my suggestions have helped.