Refactor: make try_get_interp extern and multi-plaftorm
Previously it was static and defined for Darwin, FreeBSD and Linux.
Now it is global VG_(args_the_exename) and has a length check.
Also fixed a nasty bug related to VG_(args_the_exename).
Initially this is set to point to the name of the client command
in Valgrinds own arguments. Later when checking for scripts or binaries
VG_(load_script) may get called recursively. If it gets called more than
once it sets VG_(args_the_exename) to point to the new name.
But that is on the stack. Later, if the stack grows too much the
name will get overwritten. I was seeing that with my first versions
of this code in the recursive tests in none/tests/scripts.
Now I'm allocating VG_(args_the_exename) on the heap.