=per #16009 Serialize SnapshotHeader without Java serialization

* it is backwards compatible, i.e. it can read old snapshots