THRIFT-3334 Markdown notation of protocol spec is malformed

This closes #610
diff --git a/doc/specs/thrift-protocol-spec.md b/doc/specs/thrift-protocol-spec.md
index 48ee827..950e163 100644
--- a/doc/specs/thrift-protocol-spec.md
+++ b/doc/specs/thrift-protocol-spec.md
@@ -1,4 +1,5 @@
 Thrift Protocol Structure
+====================================================================
 
 Last Modified: 2007-Jun-29
 
@@ -31,12 +32,13 @@
 that take the place of an actual encoding specification.
 
 They key point to notice is that ALL messages are just one wrapped
-<struct>. Depending upon the message type, the <struct> can be
+`<struct>`. Depending upon the message type, the `<struct>` can be
 interpreted as the argument list to a function, the return value
 of a function, or an exception.
 
 --------------------------------------------------------------------
 
+```
        <message> ::= <message-begin> <struct> <message-end>
 
  <message-begin> ::= <method-name> <message-type> <message-seqid>
@@ -94,3 +96,4 @@
  <set-elem-type> ::= <field-type>
 
       <set-size> ::= I32
+```