In QGIS:
Go to Settings > Snapping Options, check both boxes at the bottom, and check the box to the left of the layer(s) you're working on. Set a tolerance greater than 0. I like to set a tolerance in pixels, and make it big enough that it will be obvious when a vertex has snapped. 10px works well for me.
Use the Topology Checker plugin (enable with Plugins > Manage and Install Plugins...) to see if you have any gaps or overlaps where you don't intend. Once installed, access with Vector > Topology Checker. Hit Configure on the panel that pops up and select your layer in the first box. In the second box, select must not have overlaps and click Add Rule, then repeat for must not have invalid geometries. Depending on your design, you may also want must not have gaps
When designing your data, you can draw shapes next to each other, rather than drawing and then splitting. Anywhere that you want features to share an arc in the TopoJSON, be sure that the vertices forming that arc snap together. Shapefiles do not save topology, but two vertices snapped together will have the same coordinates and the topology will be inferred by the TopoJSON utility.
As for how much precision is required, TopoJSON quantizes points, and you can adjust this value. Knowing how much requires some math, explained here. You don't need to worry about snapping if you get points close enough that they are quantized to the same point.
Having written all that, I just now realized how old this question is...