Fixing Test For Data not fitting in a block

    * Added additional check for data length before writing to block
    * Fixed the "exceedingBlockSizeTest"
DMapBuilder Update : Adding Info in Global Trailer

    *   Updated DMapBuilder to store first key of a block along
        with the block offset info in the global trailer. This
        is to allow DMap to efficiently query for a key.

    *   Updated DMapBuilderTest to verify the latest changes
DMap update for restructured Map File

    * Refactored DMap class to reflect the change in map file structure.
    * CachingHashMap to limit block info stored.(Oldest entry removed)
    * FIXED: ByteArray compareTo : compare unsigned ints instead of
      signed bytes.
    * Added new ByteArray utility class.
    * Updated test classes.
Merge branch 'Fix_BrokenTest_For_DataSizeExceedingBlockSize'

Conflicts:
	src/main/java/de/jhoff/dmap/DMapBuilder.java
	src/test/java/de/jhoff/dmap/DMapBuilderTest.java
DMapBuilder Update : Adding Info in Global Trailer

    *   Updated DMapBuilder to store first key of a block along
        with the block offset info in the global trailer. This
        is to allow DMap to efficiently query for a key.

    *   Updated DMapBuilderTest to verify the latest changes
DMap update for restructured Map File

    * Refactored DMap class to reflect the change in map file structure.
    * CachingHashMap to limit block info stored.(Oldest entry removed)
    * FIXED: ByteArray compareTo : compare unsigned ints instead of
      signed bytes.
    * Added new ByteArray utility class.
    * Updated test classes.
Clean Up DMap_changes
Fixed Issue In Benchmarking code

    * Added call to DmapBuilder.build method
    * Changed log levels in DMap
Improve getValue method

    * Updated Dmap to utilise MappedByteBuffer instead of
      RandomAccessFile for retrieving trailer information.

    * Updated benchmark to run for various blocksize-key range
      scenarios.
Enable/Disable Offset preloading

    * Refactored DMap class to enable/disable offset preloading during
      map load. If enabled, DMap loads all Key-offsets information into
      memeory. Else, DMap maintains Mapped byte buffer of block trailers
      allowing to do a linear search.

    * Improved Benchmark class to run with both offset enabled/disabled
      for various block sizes and keys.
Replaced relative bytebuffer methods

    * Removed unnecessary rewind calls on bytebuffer. Also removed
      method-level sychronization by updating all relative bytebuffer
      methods with absolute methods (keep track of index manually).

    * Added tests to DmapTester for disabled offset preloading.
Replace multiple DMap constructors with a Loader

    * Provided a loader class as a part of DMap that allows to customize
      DMap options before loading. Removed all public DMap constructors.

    * Updated Tests and Benchmark code to reflect the new change.
Fixes and Updates : Renames Loader as Builder

    * The inner class Loader of DMap has been renamed to Builder
      (as in Builder Pattern)
    * Updates Tests and Benchmark to use Builder instead of Loader.
    * List of First keys created as soon as block information is loaded
      instead of creation during every get() call.
    * Minor clean-up based on review comments
Merge pull request #8 from vvenkatr/replace_constructor_with_builder

Merged changes from vvenkatr branch.