This shield is designed to use I2C or SPI communication protocols. I2C is the default, as it uses fewer pins: analog 4 and 5 are used for I2C (of course you can still connect other I2C devices to the bus). Digital #2 is used for "interrupt" notification. This means you don't have to sit there and 'poll' the chip to ask if a target tag has been found, the pin will pull low when a card, phone, etc is within range. You can adjust which pin is used if you need to keep digital #2 for something else. It is also easy to change the shield over to SPI where you can use any 4 digital pins by shorting two solder jumpers on the top of the PCB. Compatible with any "classic" Arduino - NG, Diecimilla, Duemilanove, UNO - as well as Mega R3 or later. For using the I2C interface with Mega R2 or earlier, two wires must be soldered as the I2C pins are in a different location on earlier Megas.
Please note that there is a minor issue with the current version of the boards (v1.0). SEL0 and SEL1 are reversed on the silkscreen, so SEL0 is actually SEL1 and vice versa. This only affects users who wish to use UART or SPI to communicate with the PN532 instead of the default I2C, which is the communication bus supported by Duinofun's PN532/NFC library for Arduino. This will be update on the next version of the boards.