restructured files

cleanup preprocessor

changes preprocessor funcs

added pop-preprocessor-macro

added global typedef prototype

renamed struct-field or struct-slot to strict-member