You can use motion blur, and you don't even have to animate the objects going absurdly fast or anything. Just set the shutter speed really slow (just like on a real camera):

However, there is one rather major problem; by default cycles only uses one step of interpolation between the positions of the object at the beginning and end of the exposure. This is fine in most cases, but for long exposures this is likely won't do at all:
Animation:

20 frame exposure:

To convince cycles to interpolate between start and end locations with more steps, we have to use Deformation motion blur. This allows us to set the number of interpolation steps per object in Properties > Object > Motion Blur.
20 frame exposure with 5 interpolation steps:


Setting up deformation motion blur
To do this everything must be in a single object (motion must come from the mesh itself deforming). A simple way to accomplish this when you already have animated objects:
- Duplicate the objects you want to be blurred
- Join them into one object
- Hook each individual part of the joined object to it's corresponding original object (Select the original object, then the joined object, enter edit mode (↹ Tab), select the part with L, and create a hook with ⎈ CtrlH> Hook to selected object)
- Hide the original objects in the render so they don't interfere
Once everything is joined into a single object, cycles will use the steps setting in Object > Motion Blur for determining the number of interpolation steps. Select the joined object and bump this up, e.g. to something like 5:

Result:

Note that deformation motion blur is quite a bit slower than normal motion blur. Ideally there would be a interpolation steps option for object level motion blur too, but unfortunately this is still on the todo list.