title: Encoding an integer in 7-bit format of C# BinaryReader.ReadString
body: <p><code>C#</code>'s <code>BinaryReader</code> has a function that according to MSDN, reads an integer encoded as "seven bit integer", and then reads a string with the length of this integer.</p>
  
  <p>Is there a clear documentation for the seven bit integer format (I have a rough understanding that the MSB or the LSB marks whether there are more bytes to read, and the rest bits are the data, but I'll be glad for something more exact).</p>
  
  <p>Even better, is there a <code>C</code> implementation for reading and writing numbers in this format?</p>