refactor with destructuring
use shared header in required codex, refactor codex structure
Merge branch 'RAM-sim-extensions' into develop