Reimplement the eval primitive and fix a bug

The bug: When executes PRIM instruction, the order of the argument
list constructed is wrong --- opposed against the correct result.
Fix a bug when parsing the lambda-list with rest parameters
Implements the ARGSD instruction for processing _rest_ parameters
Remove the unnecessary comments
Merge branch 'feature-vm' into develop