management: Making LocalControlHeader encoding independent of Interest/Data wire

Boost.Asio support multi-buffer send operation, which is enabled in this
commit for prepending (potentially different) LocalControlHeader's to
Interest/Data wire.

Change-Id: I39b979f89f196d3e47d6466fb71f6d440bce74d4
refs: #1265
diff --git a/src/encoding/encoding-buffer.hpp b/src/encoding/encoding-buffer.hpp
index 1659c52..b46225b 100644
--- a/src/encoding/encoding-buffer.hpp
+++ b/src/encoding/encoding-buffer.hpp
@@ -85,8 +85,15 @@
   inline const uint8_t*
   buf () const;
 
+  /**
+   * @brief Create Block from the underlying EncodingBuffer
+   *
+   * @param verifyLength If this parameter set to true, Block's constructor
+   *                     will be requested to verify consistency of the encoded
+   *                     length in the Block, otherwise ignored
+   */
   inline Block
-  block () const;
+  block (bool verifyLength = true) const;
 
   inline void
   resize (size_t sz, bool addInFront);
@@ -218,10 +225,11 @@
 }
 
 inline Block
-EncodingImpl<encoding::Buffer>::block () const
+EncodingImpl<encoding::Buffer>::block (bool verifyLength/* = true*/) const
 {
   return Block(m_buffer,
-               m_begin, m_end);
+               m_begin, m_end,
+               verifyLength);
 }
 
 inline void