Added a benchmark (fib 25) to the test suite

Benchmarks can be run with "go test -test.bench=."
Stop Env.Find() from allocating lots of memory

Find was perfectly happy operating on an Env (not an Env*), so whenever
it returned &env, it had to make a heap allocation so the pointer
outlived the temporary copy passed in. Oops. This caused Env.Find() to
take more time than expected.

This fixed version runs about 20% faster on the (fib 25) benchmark on my
system.
Precompute size of array in ToSlice as well