begin implementation of Pipes & Filters