Bug fix: os << a did not return os
Change token type into an enum class
Token now contains the matching substring
Adding IDENT and = to the lexer