- only open a filerec in dedupe_extent_list() if it hasn't already been
  opened. otherwise they get stuck on the open files list multiple times,
  corrupting it.
- fix assertion in add_dedupe_request()
- ctxt->num_queued in dedupe.c wasn't being updated along with the queued
  list in a couple places, fix that.
- Putting filerecs on lists for the dedupe context doesn't work out because a
  filerec can be added to a context multiple times.
  - instead allocate a request object for this
  - it turns out the code looks cleaner this way
- Estimate space saved from dedupe operation
  - Do this by mapping each file (via fiemap()) and counting the amount of
    data flagged as shared.
  - Print the difference, along with bytes processed by kernel
  - Update README, manpage