runtime: DOn't root the passed value in (call/cc)

Instead of explicitly rooting the passed value in the (call/cc) resume
path teach the garbage collector how to visit the passed value for a
given Contiunation object. Also ensure the passed value is nulled out
after it's used by changing the accessor method to "takePassedValue" and
having it null out the value internally.

This is done entirely to reduce the amount of code and in particular
stack manipulation that occurs in the contination resume path after
longjmp().