Initial resurection and redesign
  - Works for extern functions global variables and basic structs in C