refactor covariance propogation

allow error states, and separate Ocp from OcpCovariance