Improved ASSERT

Our ASSERT macro can now handle va args, so you can print variable
values.

All our queues now have names as well, so we can identitfy which
queue overflowed when one of the asserts triggers inside queue.c.