reimplemented the serial_snapshotter, final testing tommorow