Initial implementation of modified (cref) refinements support.

Only normal calls (x.y[(...)]) are supported.

Only interpreter is supported.

Caching is based on global "refinement token" which is not yet
invalidated for changes.

No support for reflective calls.

No temporal copying of refinements; future refinements added to
a module already being "using'ed" will be visible.

Temporal flagging of call sites works; only calls after a "using"
call will be flagged as refined.
Increment global refinement token for Module#refine calls.
Fix refine return value and add refinements method.