poll Active Raw Function
As the system runs, the clock thread periodically wakes up and samples the running interpreters to get an indication of which A_RawFunctions are taking up time. Those raw functions have their countdowns decreased by a big jump, being careful not to reach or cross zero. That way, the logic for creating an optimized L2Chunks for it remains within the execution mechanism.
This method runs in a foreign thread, not the interpreter thread. It answers the best estimate of which A_RawFunction is currently being run by this interpreter. It polls the volatile function field to get a coherent read of the A_Function that's currently running, or at least was recently running. The cost of having function be volatile should be relatively minor, but it ensures coherent access to the A_Function.code within it, and that A_RawFunction's fields as well.
TODO Eventually we may rework this, to allow dedicated threads to perform the optimization while the execution threads continue to make progress. In that case we would allow a zero crossing from either the periodic polling or the invocation logic, and it would simply queue a task for that raw function in the optimization thread pool.