Well, it turns out that we can't really take the approach of creating a proxy function for pcomplete in shell.el, because pcomplete looks at last-command to determine its behavior. So, is there any objection to just loading pcomplete with shell.el?