am 8d13ef3c: Merge "Separate interface definition and implementation of Snapshot"

* commit '8d13ef3c59f3087df29a226f3cdc155faa4ac903':
  Separate interface definition and implementation of Snapshot