Class description
The disposable class wrapping some secure memory allocated by libsodium. This class has two slots:
underlying - pointer to memory allocated by libsodium's sodium_malloc;
size - memory block size in bytes.

New instances must be constructed with new-secure-memory or using clone. The cloned objects have an independent copy of a newly allocated secure memory block (deep copy), so read access to the source memory must be granted prior to cloning. The cloned memory doesn't inherit the current access right of the source, instead it starts with the same access rights which are normally granted by calling new-secure-memory.