We may want to ship remote function definitions when they are first invoked (as opposed to when they are first defined. This would help avoid problems like #1607.
This could also avoid shipping a ton of remote function definitions that are not used (e.g., because they are defined in a Python module which is imported by a user).
The main downside is that it increases latency for the first invocation.
cc @ludwigschmidt