OAK-1639 - MarkSweepGarbageCollector improvements

Refactoring the MarkSweepGarbageCollector.
-- Replaced creation of internal executor with explicitly passed executor
-- Document/Segment store would create new instance of
    MarkSweepGarbageCollector for every invocation

git-svn-id: https://svn.apache.org/repos/asf/jackrabbit/oak/trunk@1583583 13f79535-47bb-0310-9956-ffa450edef68