Fix: preload() method on datablocks should always set errorStr when returning false.

Otherwise it will dump the previous error message (content of the errorStr).
Fix FixedSizeVector() initialization.

mArray[6] was never assigned (ownerless experssion).
Corrected the use of #pragma warning()

We should use #pragma warning(push/pop) instead of (default: X)
Fix: the string literal is implicitly casted to the bool type.
Fix: Some compilers do not auto-cast String and Path classes to (char *).
Fix: Underflow of the buffer 'ctx'.

memset function should not receive sizeof of the pointer.
Fix wrong check for bits (using '&&' instead of '&').
Fix: dSprintf should receive size of the buffer, not the size of the pointer.

It was safe, as we are using static console return buffer,
which is large enough to hold enough data (default is 2048).
Fix: Added missing virtual destructors for classes with virtual functions.
Fix: removed 'virtual' for classes which doesn't have child.
Renamed local variable so it doesn't interfere with the provided argument.

String errorStr should be filled in only when ::preload returns false.
Rename local variable to prevent confusion with member variable.
Fix GuiTreeViewCtrl: we should use the member var, removed local decl.
Fix: Bit shifting of the 32-bit value with a subsequent expansion to the 64-bit type.

We now shift the 64-bit value, which is now treated correctly.
Merge pull request #635 from just-bank/engine-fixes

Various engine fixes