Check UnencryptedFileLength

Fixes #4.
- DecryptFileWithStream checks now the UnencryptedFileLength and
produces a temporary file
- Added UnencryptedFileLength  to the encryptedFileHeader.Checksum
- Added TEMP_FILE_EXTENSION
- Added overWrite flag in DecryptFileWithStream, to overwrite the output
file if needed