I have designed numerous boards with the spartan 6 and that exact programmer. Here's how I usually do it:
1) M0: Vcc, M1: Gnd - this sets it to SPI master mode so it will load its configuration on boot from a SPI flash
2) Connect a SPI flash (I usually use MX25L6445) to the flash pins, eg: R11, P10, T10, T3 on the FTG256 package
3) Connect the JTAG header to the JTAG pins on the FPGA, normal TDI to TDI, TDO to TDO, etc.
In ISE, you'll compile the bit file. You can then use Impact to load it directly on the FPGA. If you want to program the flash, you need to convert the bit to mcs. You can probably do this within ISE, but I just do it on the command line in Linux:
promgen -spi -p mcs -o "project.mcs" -s 8192 -u 0 "project.bit" -w
4) In Impact, when it scans the JTAG it'll see the FPGA, tell you it supports an attached flash device, and ask if you want to set it up, select yes. It will ask you for the flash type/model, if you used the MX25L6445 you can select "S25FL064P" from the drop down menu. Then right click on the flash on the diagram and select program
Impact will load a temporary image on the FPGA that allows it to pass data through the FPGA to program the flash directly. When it's done, it will cycle the FPGA which will then load its configuration from the flash like a normal boot.