refactored SynDB.pas to implement the ConnectionTimeOutMinutes parameter in a much more cleaner way:
- with a per-thread timing and reconnection;
- disallowing transactions if ThreadingMode=tmThreadPool (in this case, commit/execute/rollback should be in the same thread/connection)