How does activated carbon trap impurities?
Never forget to interpret in terms of physical/chemical forces, by order of energy: van der Waals, hydrophobic (pseudo forces), hydrogen bonds, disulfide bridges, covalent, electrostatic (for the most frequent).

Indeed, in charcoal, there is a large number of $\pi$-electrons that can make bonds, in particular. And yes, the porosity is important. 

But perhaps could you have a look at Boehm H. P. Some aspects of the surface of carbon blacks and other carbons, Carbon, 1994, 32(5), 759-769. DOI 10.1016/0008-6223(94)90031-0.