Add virtual sites

I was trying to use `modeller.addExtraParticles` to add a virtual site so I could use tip4p. As written, this code kept throwing an exception as `index = 3` and `site.atoms = [0, 1, 2]`

This probably shouldn't be merged because there must have been some logic to including the index offset, but these changes worked for my particular case.