Refactoring of multi-part slicing mechanisms

Refactors brick-slicing areas of PersistedStorage to utilize the methods in coverage_model/bricking_utils.  This allows the same inter-brick slicing algorithms to be re-used in multiple places.  Also allows the slicing algorithms to be tested more cleanly and at a more atomic (UNIT) level.