Add a Transition adapter

This lets guillotine apps migrate between two adapters.

* Reads come from the new adapter first.  Otherwise, they come from the old adapter and get written to the new adapter.
* Writes go to the old adapter first, and then are passed to the new adapter.  If the new adapter write fails, the write will be re-attempted on the next read.
* Deletes are written to the new adapter first, and then the old adapter.