Add DVR support to the client library.

This adds DVR support which in turn allows us to test the client library
without talking directly to orchestrate every time. This should make
testing easier and faster.