Rate Distortion Theory for Causal Video Coding: Characterization, Computation Algorithm, Comparison, and Code Design