Making StreamUtils.copyStream* methods usable for copying from ZipInputSteam

Current StreamUtils.copyStream* methods do close input streams after copying. This behavior is unacceptable when reading entries from ZipInputStream, JarInputStream and stuff from other streams what doesn't need to be closed immediately.
So I've moved closing the streams out of copyStream* methods, also added some docs to avoid confusion.