For the moment, don't throw away computations for modifiables.
Only destroy things once in reg_heap::destroy_computations( ).
Call check_tokens in the right place.
Check source tokens and source regs in check_used_reg( ).
lazy_evaluate( ) should call incremental_evaluate_in_context( ).
Add wrapper incremental_evaluate_unchangeable( ).
Check incremental_evaluate( ) and incremental_evaluate_unchangeable( )
Check set_reg_value( ).
Fix checks for DEBUG_MACHINE >= 2
Check newly created regs if DEBUG_MACHINE >= 3
Add check that computations.info is NOT set.
Destroy regs in garbage collection using destroy_computations( )!
Destroy computations in token using destroy_computations( ).
Initial marking of head regs.
Correctly increment n_heads from Context.

Don't allow modification of heads from context anymore.
Stop exporting non-const access to heads and temp_heads.
Don't throw away computations for heads!

That spoils the benefit of caching!
Check that source_token and source_reg are right before calling pre_destroy...
Don't clear individual computations.

Could we just clear this in reverse order?
Add comment.