The last change, additional tests if comand is existing, doesn't work
under Windows because commands are tested only without extensions but
under Windows this is not successful.
False error was being given for egg modules that
have not been unzipped but were able to import.
Now __import__ is used for those cases as a last
check.
There was no path checking before running a command
resulting in a waste of time trying to find the
issue. This was amplified by the fact that no mention
of where the error occurs was made, and neither
which path that the error was raised for.
1. added the possibility to redirect stderr to stdout in utils.run_cmd
2. synch.py now calls the above run_cmd in redirect mode instead of the
old 'cmd' that doesn't intercept standard streams. This makes it easier
for an external tool to intercept the output of 'hg'.