Generalizing replicateM?