Made several subtle changes to the RVM instruction set.

These changes are motivated by 
- mu2rv; during translation it has to be precisely known which 
  instructions leave a result on the stack.
- mu2rv: simplify translation of certain nested expressions
- expected benefits for backtracking implementation.

The changes are:
- STORELOC and STOREVAR now leave the stored value on the stack
- YIELD0 and YIELD1 always leave a value on the stack in the coroutine
- NEXT0 always leaves a (null) value on the stack in the caller 
  of the coroutine
- INIT leaves the initialized coroutine on the stack (this will allow
  to keep coroutines on the stack during backtracking).