Finish second 01_ interpreter implementation in Rust that is much faster
than the first implementation.

Running q.01_:
Haskell:   0.008real 0.003user 0.003sys
C:         0.009real 0.006user 0.002sys
Go:        0.016real 0.010user 0.005sys
Rust:      0.030real 0.019user 0.009sys
Rust(old): 1.116real 1.100user 0.012sys

Running 99.01_:
(Both Rust implementations produce the correct output, then end with
"task '<main>' has overflowed its stack".)
Haskell:   0.028real 0.021user 0.004sys
C:         0.078real 0.068user 0.003sys
Go:        0.126real 0.096user 0.024sys
Rust:      0.542real 0.173user 0.029sys
Rust(old): 5.823real 5.289user 0.035sys

Running unl2.01_:
(Both Rust implementations fail, ending with
"task '<main>' has overflowed its stack".)
Haskell:    1.053real  1.026user 0.019sys
C:          2.529real  2.524user 0.004sys
Go:        10.419real 10.364user 0.020sys

Runtime polymorphism in Rust appears to be really expensive.

The new Rust implementation is half as fast as the Go implementation.
Can probably make a good gain by getting rid of the reference counting
for the Ast.

I don't know about the overflowing stack.