gdss-brick >> gh17 Redesign disk storage: switch to new hlog modules.

Now brick_ets uses new (work-in-progress) brick_hlog_* modules.

Working:
- Write metadata hunks and value blob hunks to the WAL (write ahead log).
- Read value blobs from the WAL.

Not Working (not implemented yet):
- The write-back process from the WAL to the stable storage (h2leveldb
  for metadata and private hlog for value blob) is not implemented.
  So brick server cannot reload metadata after restart.
- The scavenger process is not implemented so the disk space used by
  WAL files is never reclaimed.

Details:
- brick_data_sup:
  * No longer starts the old hlog processes (common log and scavenger).

- brick_ets:
  * Switch to the new hlog modules.
  * Remove bigdata_dir =:= undefined clauses. The new hlog module will
    not support table without a value blob store.
  * Remove sync log process. (It's moved to the new WAL module).
  * Temporary disable the following functions:
    ** bcb_force_flush/1
    ** load_metadata/1
    ** sequence_file_is_bad/3
    ** write_bad_sequence_hunk/5
  * Remove log_mods2/3 and rename log_mods2_b/3 to write_metadata_term/3.
  * Move some of the function clauses in handle_info/2 to a new brick
    callback bcb_handle_info/2.

- brick_hlog_hunk:
  * Make calc_hunk_size/4 a public API.
  * Allow blob_wal hunk to have more than one blobs.

- brick_hlog_wal:
  * Move wal_sync_latencies metrics from the old common log.

- brick_metadata_store/brick_metadata_store_leveldb:
  * Add request_gruop_commit/1 API.

- brick_blob_store/brick_blob_store_hlog:
  * Now blob store saves a reserved private log position into
    each 'blob_wal' hunk, so that write-back process can validate
    the position when writing the blob back to the private log.
  * Add writeback_to_stable_storage/2 and related functions. (in
    progress).