[chapter 10] add part support of Q-Expr
[chapter 9] fix return value error for Q-Expr

NOTE:
lispy> {1 2}
({1 2})

while it should be
lispy> {1 2}
{1 2}
[chapter 10] add first implement

still with bugs:
> list 1 2
crash, caused by double free

eval cannot work
fix 'list 1 2' crash bug

bug:
> list 1 2
crash
fix buildin_'func' bug

NOTE: there is no pop in lval_eval, so the first item is the symbol
itself.

bug:
> eval (head {3 30})
Function 'eval' passed to incorrect type!

it should be 3