Pharmaceutical giant Roche has agreed to buy San Diego-based Poseida Therapeutics for about $1 billion in its effort to assemble a promising pipeline of cell therapies.