implement lazy-cat mapcat