All clear. I'm still thinking about how to make sure the modules don't conflict.
The most correct solution is to refuse override. But then we will have to create an extra load on hooks.
Since the contact form and controller do not have any hooks, we will have to load everything into the displayHeader hook, which means that the module will hang in memory all the time.
Here I need to think through everything