Fixed broken macro system

Thing declaration was breaking in all kinds of bizarre ways.

Turns out it's because the ... syntax needs to be explicitly provided,
so the pattern expansion was breaking. I've added it to the base.

I also added quasiquote, unquote, and unquote-splicing as well, because
they'll be useful in the future.