Header files and flex file. Not finished, but in progress