renamed scanner

if the lex scanner ends with .l, gnu make intrinsically knows how to
build it, so don't need a separate target for it. the separate
compilation target remains because flex's ouput does not comply with
clang's -Weverything
simplification of makefile using $^
added test runner and flex output to gitignore
refer to my ci build
Merge pull request #2 from tabascoeye/master

refactoring all structs to typedefs
symbol types should start at 1
Merge pull request #1 from mschuetz/master

merge back upstream