Closes a previously opened cabinet or cabinet set.
This closes a cabinet, all cabinets associated with it via the mscabd_cabinet::next, mscabd_cabinet::prevcab and mscabd_cabinet::nextcab pointers, and all folders and files. All memory used by these entities is freed.
If extra cabinets have been added using append() or prepend(), these will all be freed, even if the cabinet pointer given is not the first cabinet in the set. Do NOT close() more than one cabinet in the set.
The mscabd_cabinet::filename is not freed by the library, as it is not allocated by the library. The caller should free this itself if necessary, before it is lost forever.