Add some documentation around the way #pragma GCC poison works...

... and how you can use macros to still get around it if you absolutely must