Let's say that two people want to touch each otherON THE HANDS!!1
We will model each person's right hand as a set of points. We will define two sets A and B as "touching" if they are non-overlapping, and there is a point in A with some points from B in its neighbourhood, or vice versa.
Since people's skin is pretty uniform, we can assume that the hands are both open sets or both closed sets. We consider both cases:
 Open sets
Suppose the sets A and B are touching open sets. We know from the definition of an open set that if you take a point in A and wiggle it, it's still in A. That is, every point in the neighbourhood of that point is also in A. The only way there could be points from B in the same neighbourhood is if some points in A were also in B, but that's not allowed because the sets would be overlapping. The same reasoning works with A exchanged for B. So open sets can't touch.
 Closed sets
Suppose the sets A and B are touching closed sets. The definition of a closed set says that the neighbourhood of a point outside B does not contain points from B. A point in A could have points from B in its neighbourhood and the sets would touch. But that point also has to be outside B. The same reasoning works with A exchanged for B. So closed sets can't touch.
Therefore people can't touch. But whahey, what if we live in non-standard analysis? The points in our closed sets can't be right on top of one another, but maybe they can be epsilon apart? All we have to do is get our hands REALLY close. OK, start pushing. Harder!