known recursion manager prototype
tuple and map types improved.
Used VolatileNotNullLazyValue instead of AtomicNotNullLazyValue to avoid deadlock
Got rid of GrTupleTypeWithLazyValue. All the functionality is moved to GrTupleType