Using begin and end token identifiers to verify category
Dynamically allocating char *filename
Handling include files

Need to keep track of prior filenames in a stack
Adding test.h to ignore
Working generic doubly linked circular list

With C error handling via goto cleanup; and perror()
Refactoring list to add pop() and peek()

- Renamed append and prepend to push and push_front
- Move push above push_front
- Better clarity while linking nodes
Refactoring to use filenames list
Refactoring token modifiers into token.c

- Adding wrapper new_token() to call create_token() with Flex globals
- Moved token.sval and token.text realloc and appends
- Includes pop of filename on EOF (related to last commit)
Adding destroy, empty, end, head, tail functions to list
Updating tasks
Adding Flex options

These silence GCC's warning about unused functions
Including clex.h in main

Generated with flex --head-file=clex.h clex.l
Cleaner list iteration in main
Lexical error message includes filename

- Also better message for unknown return value from yylex()
Adding size to list
Fixing list error messages
Fixing list sentinel marker

I *knew* this was going to bite me. I wanted to have the bool in the
data union on each node so I didn't waste space, but that caused
pointers to be checked for truth values with caused an ephemeral bug
when detecting the sentinel. Easy fix is having the sentinel marker as a
separate bool on each node, though this wastes space. But if I want to
use a node as an iterator, I need to know whether or not it's the
sentinel, necessitating its marking.
Using braces around error labels in main
Using yypush_buffer_state in main and parse_files

Since I'm using Flex's internal stack for include files, it is then
necessary to use it in main for adding user specified files. Cannot use
yy_switch_to_buffer as it seems to mess up Flex's stack. I also should
not switch/push a file on the EOF action or on the call to yywrap, as it
is far more difficult to know when the file is being added.
Initializing yylineno to 1 for each file