Add anaphoric when and while
Make car and cdr not to raise runtime error

if `x` is not cons cell,
(car x) => x
(cdr x) => nil
Specify `override` modifier for Stream
Create a function to check argument number for function
Fix refering different variable
Check argument number for NativeFunc in Vm
Add `format` utility function
Refine runtime error message
Merge branch 'feature/format' into develop