New methods for StringUtils: sprintf_safe and CmpI(const char*,const char*)

The former is actually a preprocessor define. It should be converted to a
real function in UD::StringUtils, using va_args.
New utility header: Common/TimeUtils.h

Currently, it contains two methods, dealing with cross-platfrom C library
extensions.
Connection, Header: use the new wrapper functions for time handling
Connection, WSRespSource: ctor parameter init order
Header, CommonErrorRespSource: use functions from StringUtils.h
QueryParams::AppendToCurrentPart: switch label warning fix
RespSource::FS::Response ctor: exception and stream open fix
WSRespSource::Create: remove unused ConnHdr variable
EchoMsgHandler: add virtual dtor to avoid warning
WebSocket::Connection::ProcessFrame: read/write order fix
MiniWebSrv.cpp: include path case fix
CombinerRespSource::RSHolder: unique_ptr should be used in C++

auto_ptr is deprecated, and doesn't have a move constructor.
FSRespSource: indent fix
FSRespSource::ctor: root path canonization fix

In order for the root path check to work when creating requests, the root
path must be stored in a canonized form.
MiniWebSrv.cpp: posix signal handling