Adds start of error handling/exceptions.
Implements many exception-related functions.
Improves exception handling logic to allow for exception bubbling.
Adds a first simple test for exceptions.
Adds a second test.
Exception handler stack is no longer in exception.h.

Frankly, not sure why it ever was.
Queues now use exceptions.
Now uses an internal light stack instead of a linked list to store exception handlers.

In the actual linked list code, it's neccessary to
add and delete a temporary exception handler (or
more accurately, a suppressor). This causes
infinite recursion once LinkedList_Remove or
Exception_DeleteLastHandler is called.
Adds exception support to DArrays, LinkedLists, and Stacks.

However, I probably need to rewrite the test
framework/program/thing to take into account
both the poor code coverage of the current one,
and the fact that actual helpful exception
output is suppressed.

I might add a (macro-conditional) SIGSEGV
handler as well, if I can figure out a way to
make it "safe". Although, after a segfault,
there's basically nothing guaranteed safe AFAIK.
Tests no longer use Check, which should make debugging easier.