use Promise instead of CallbackNotifier
resource leak: FileInputStream was never closed
[#1481] Add a JdkZlibDecoder which has no dependencies
Merge remote-tracking branch: upstream/master