handle partitioning properly; use an option to skip the first step, when re-running