Since the lifetime of RobotInteraction() is ambiguous it is not clear to me that doing so is safe.  Consider
```
lock_access_to robot_interaction
const KinematicOptionsMapPtr& kinematic_options_map = getKinematicOptionsMap();
unlock_access_to robot_interaction
// some other thread deletes robot_interaction
kinematic_options_map->dereference
```
Am I being too paranoid?  Tell me if this is silly and I'll fix it...