bench/snapshot:add random generator and snapshot supports in basement