ISDb: Move to own namespace.

Also move OpenURL() to SubtitleDlDlg, it was only ever used there and wasn't specific to ISDb.
ISDb: Support hashing using the IAsyncReader filter interface.

Adds support for RARFileSource.
PPageFileInfo: Try to request the filename and size from the filter first.

Allows RARFileSource to show the real filename and size of the file being played.
WebClientSocket: Try to request filename and size from the filter.
MainFrm: Use a general GetFileName() when a filename is needed.

Adds a consistent filename to be used across the application.
Allows RFS to show the internal filename.
SaveDlg: Allow extraction of RAR files using RFS.
PPageFileMediaInfo: Add MediaInfo support for IAsyncReader.

Allows the MediaInfo to be displayed from the RFS filter.
Updated changelog.
docs/Compilation.txt: Add recursion to 'git submodule foreach' command.
PPageFileMediaInfo: Some filters return S_FALSE to indicate read errors.

This is a success code, so we need to explicitly check for S_OK.
WebClientSocket: fix OnInfo() display

After 937e7bd the displayed file path wasn't properly stripped
ShockwaveGraph: fix seeking in .swf files
CTextFile: Add a buffer for read operations.
SimpleTextSubtitle: Optimize Add function to improve the parsing speed.
SimpleTextSubtitle: Add missing break statement.
SimpleTextSubtitle: GetInt: Avoid temporary CString construction.
STS: Fix CreateSegments not to create empty segments.
STS::Add: Some segments were forgotten when inserting.
Sub renderer: Avoid rendering many times the exact same subtitle.
Rasterizer: Constify some stuff.