Add refactored ParallelRunner and test

Share the cumulated data class; update catch clauses to final