This encoding is used by ZIP standard. We fallback to UTF-8 encoding if CP437 encoding is unavailable on the platform or it is detected that the text is actually in UTF-8 encoding. The latter is needed because files created by Info-ZIP with UTF-8 names doesn't actually have bit flag which is required (again, according to standard) for UTF-8.
Also changes were made to adopt this removal. This was done to improve behavior in some corner cases as well as enforce intentional usage of particular integer types.