track handoff progress

* vnodes can optionally provide the size of their data (in bytes or # of objects)
  when returning from is_empty/1. For vnodes whose size may change during handoff
  (e.g. a non read-isolated iterator in riak_kv like ets) a function may be provided
  instead. The function is called to calculate the size of the vnode each time
  transfer stats are requested from the handoff manager
* use existing handoff stats to calculate completion percentage
* move transfers console function from riak_kv_console to riak_core_console. It
  is not specific to kv and other applications should be able to take advantage
  of it
* transfers prints completion percentage w/ progress bar
* transfers can optionally take a number of seconds, N, and a maximum, M. The output
  is printed every N seconds a total of M times. If M is not given or is not a number
  the output will be printed every N seconds until CTRL+C is pressed. If N is not a number
  it is ignored