Technically, you should have the 3V line exposed as well to program over SWD. However, it may actually work with the STLink without this, I haven’t tried. With a Segger JLink programmer, this line is used purely to sense voltage. But with the STLink, we seemed to have learned it actually provides power as well. So it is possible that you wouldn’t need the 3V line hooked up, I have never tried this.
If you do, luckily there is a giant 3V pad on the back of your board in the battery clip. So whatever programming rig you have could just tap into that if you need to. Would probably be better anyway if space constraints are a concern.
The nrf51 is very forgiving when it comes to pin mapping, pretty much any pin can be used for any function. The big exception to that are analog pins and SWD, but for SPI/I2C you can use pretty much anything you want.
Are you using both at the same time? What are you using them for respectively? With bluz, I2C and SPI can’t be used at the same time as they share resources underneath. You can switch between them, just can’t open both at the same time.
What sensors are on there? An IMU and what?