Fix some more bugs with macro expansion
Make marco expansion happen in eval.
Add cond as a macro