tweaked order of eql-run logic to not require 'record' param and avoid calls to allocation
cleaner logic for timing test, avoids mem on stack