     started?  = Timex.after? now, start_time
     finished? = Timex.after? now, end_time
 
-    debug_log "#{inspect event} starts: #{inspect start_time} | ends: #{inspect end_time} | started? #{started?} | finished? #{finished?}"
-
     case f.executable_type do
       "Regimen"  -> maybe_start_regimen(started?, start_time, last_time, event, now)
       "Sequence" -> maybe_start_sequence(started?, finished?, f, last_time, event, now)
     end
   end
 
+  ## THIS IS WHERE LOGIC GETS UGLY.
+  ## SEE THE MODULEDOC FOR MORE INFO ON THESE WEIRD RULES.
 
   # We only want to start the regiment if it is started, and not older than a minute.
   defp maybe_start_regimen(started?, start_time, last_time, event, now)

    {:noreply, {context, nil, state}}
  end

  def handle_info({Database, :sync_end}, {context, timer, state}) do
    debug_log "Resuming FarmEvent runner."
    if timer do


  end

  # Enumeration is complete.
  defp start_events(_context, [], _now), do: :ok

  # Enumerate the events to be started.
  defp start_events(%Context{} = context, [event | rest], now) do
    # Spawn to be non blocking here. Maybe link to this process? i don't know.
    spawn fn() -> execute_event(event, context, now) end
    # Continue enumeration.
    start_events(context, rest, now)
  end

  # Don't know why i did this.
  defp get_now, do: Timex.now()

  # is then more than 1 minute in the past?
  defp is_too_old?(now, then) do
    blah = fn(dt) -> "#{dt.hour}:#{dt.minute}:#{dt.second}" end
    seconds = DateTime.to_unix(now, :second) - DateTime.to_unix(then, :second)
    c = seconds > 60 # not in MS here
    debug_log "is checking #{blah.(now)} - #{blah.(then)} = #{seconds} seconds ago. is_too_old? => #{c}"
    c
  end

  defp lookup(%Context{} = ctx, module, sr_id) do
    item = Database.get_by_id(ctx, module, sr_id)
    unless item do
      raise "Could not find #{inspect module} by id: #{sr_id}"
    end
    item.body || raise "#{module} #{sr_id} has no body."
  end
end
