         @continue = true
         @interval = 5      # The # of the milliseconds to sleep between steps.
 
-    # Start the engine's event loop.
+    # Start the engine's time simulation.
     start : () ->
         @continue = true
         @timestamp = new Date()
-        @loop()
+        @step()
 
-    # Stop the engine's event loop.
+    # Stop the engine's time simulation.
     stop : () ->
         @continue = false
         @timestamp = null

        # Do it again when the stack clears.
        @timestamp = now
        setTimeout () =>
            @.loop()
        , @interval

    add : (elements...) ->
        @elements.push(element) for element in elements

    # Run a single step in the time simulation.
    step : () ->
        # Stop, if so desired.
        return if not @continue

        # Determine how much time has elapsed since the last step.
        now = new Date()
        elapsed = now - @timestamp

