We may want to rename `checkSerializable` to `captureNow` to make it clear that we're not just checking for serializability, we're serializing and returning the current version of the function.