[execve] Fix a bug in script handling logic
[execve] Fix a bug in script handling logic

Let's suppose we have a script /usr/bin/myscript1 like:

        \#!/bin/sh
        echo Hello

If we run this script from /usr/bin, both the argv[0] and the path of the
script will be 'myscript1' and everything will work. But, if we run the
script from another directory, ASH (interactive) will find the script because
it is in the PATH, but the kernel will still pass to /bin/sh just the original
argv[0], which is 'myscript1'. Obviously, the shell won't be able to find the
file in this context, because it won't search in the PATH (and that's correct).
Therefore, Tilck has to pass to /bin/sh (or whatever shell) the path of the
script, not it's original argv[0]. This patch makes the kernel do exactly that.

vvaltchev/experimentOs,vvaltchev/experimentOs,vvaltchev/experimentOs,vvaltchev/experimentOs