Revert erroneous changes to snapshot framework, and add unit tests for smoothing different dtypes