ControllerInterface holds the set of named symbols that the ORC runtime exposes to the controller for bootstrapping the ExecutionSession. Insertion is checked: duplicate symbols are rejected with an error. Session is updated to own a ControllerInterface instance, pre-populated with an orc_rt_SessionInstance entry pointing to the Session object.