A Non-Intrusive and Incremental Approach to Enabling Direct Communications in RPC-based Grid Programming Systems