major refactoring (enable isolated multiple ffi_state which holds isolated macro and source-tree cache)
implement selective cdef