Non-covalent interactions and their role in biological and catalytic chemistry