An exercise in punctuation

Charlie sent me this game for comment. I thought it would be interesting for us both to annotate. If you would like to join in, please assign each move of Black a symbol:
! = almost certainly the best move
!? = a good move among alternatives
?! = probably not the best move
? = clearly wrong

[Event "Ex Club Chship"]
[Site "Exeter"]
[Date "2011.04.19"]
[Round "6"]
[White "Bolt, graham"]
[Black "keen, charles"]
[Result "1-0"]
[ECO "A00"]
[PlyCount "115"]

1. g3 d5 2. Bg2 Nf6 3. d3 e5 4. Bg5 Be7 5. Nf3 h6 6. Bxf6 Bxf6 7. c3 O-O 8. O-O
c6 9. Nbd2 Re8 10. Qc2 Bf5 11. e4 Bg6 12. Rfd1 Qb6 13. Nf1 Nd7 14. Ne3 dxe4 15.
dxe4 Nc5 16. Nd2 Rad8 17. b4 Nd7 18. a4 Bg5 19. Ndc4 Qc7 20. Qe2 Nf8 21. Ng4
Rxd1+ 22. Rxd1 h5 23. Ngxe5 Bf6 24. Nxg6 fxg6 25. Qc2 b5 26. Na5 c5 27. Qa2+
Kh7 28. Qa3 bxa4 29. Qxa4 Rc8 30. Bh3 Rb8 31. Qc6 Qe5 32. Qxc5 Qxc5 33. bxc5
Rb5 34. Nc6 a5 35. e5 Rxc5 36. exf6 Rxc6 37. f7 Rf6 38. Ra1 Rxf7 39. Rxa5 Rc7
40. Ra3 g5 41. Ra8 Nd7 42. Bxd7 Rxd7 43. Rc8 Rd1+ 44. Kg2 g4 45. Rc6 g6 46. h3
gxh3+ 47. Kxh3 Kh6 48. Kg2 Rc1 49. Kf3 Kg5 50. Rc5+ Kf6 51. Ke3 Rc2 52. f4 Rg2
53. Rg5 Rc2 54. Kd4 Rf2 55. Re5 h4 56. gxh4 Rxf4+ 57. Re4 Rxe4+ 58. Kxe4 1-0

Chess Quotes

From: johnnymc@news.rio.com (John McMenamin)

  Here's my entry to this mess:

"Skeletons of mice are often to be found in coconuts, for it is easier to get in, slim and greedy, than to get out, appeased but fat."
— Viktor KORCHNOI