Make macro to make writing test case easier

Since it is tedious and error-prone that we have to write the
Begin and End token in every Vec we use as a test case, a macro
was made to this automatically for list of tokens.
Fix bug so missing close paren results in an error

Previously if the user forgot to enter a closing paren, it would
result in a crash, since no checks were made for this error case.

The program checks for this error and outputs a suitable error
message.