Currently, ServiceWorker.run()'s return value differs depending on whether num_workers is 0 or not. Without forking (num_workers = 0), an array with the actual module return values is returned. With forking, nothing is returned.
To resolve this inconsistency, we will need to more clearly define which kinds of objects can be returned. In the fork case, we need to be able to serialize return values. This means that we'll need to restrict return values to JSON.stringify-able values.