minor cleanup
add scope tracking

Possibly buggy. But current tests pass.
throw exception is scope tracker is not empty

Not empty after lexing.

Fix test_004 which had unbalanced brackets.
All tests passing.
cleaning GetExternalDefinitions

Removing namespace tracking, not used and buggy.

All tests passing.
adding CpuId to catalog

Loosely inspired by facebook's one.
adding test_008.c and fixing a bug

bug: if the source does not have includes first_include_key is not added
so we end up blasting SOS token.
adding full test_008.cc