Add comments:
* raise NotImplementedError explicitly for methods to be implemented in child classes
* what these method does
* what instance variables are
value of @map[key] is not Array, but a object: "top" is wrong name
variable name just "empty" is misleading with "chunk.empty" just above
add missing tests...
Comment and variable name
 * value of @map[key] is not array, but just a chunk
 * comments for return value and others
add tests for BasicBuffer#emit
add tests of MemoryBuffer
Add spaces, comments and replace attr_reader for understandable position
add comment for mistery
add test for buf_file
fix to replace obsolete URI.escape(escape) with URI::Parser#escape(unescape)
refactor to remove dup code
Add comments and test cases:
 * dots are used as separator in buffer paths
 * for keys, dots are also used
 * in resume sequence, file buffer plugin cannot determine whether:
   * "any.chars" is key
   * "__prefix__.any" is the prefix of other buffer plugin instance
   * for the path such like "__prefix__.any.chars.b000000.__suffix__"
 * Hopefully, we should escape dots (".") in keys...
   * But it breaks compatibilities
fix to cache an instance of URI::Parser
add comments for 2 bugs
Merge pull request #439 from tagomoris/basic_buffer_documented

Add comments and tests for BasicBuffer