When I say "If your vcs doesn't encourage you to submit early and submit often, you need a new vcs" what do I mean?
The benefits of early and often commits aren't (or shouldn't be disputable). Frequent checkins of small changes reduce the chance of breakage to your code. It's not only easier to merge smaller changes but also easier to undo those changes.
As for VCSs that encourage it, I would typically consider git and hg to be on top of that ideal. Mind you this could apply to any DVCS simply due to the nature of having to support fully disconnected operation.
In the case of Git and Mercurial, they take into account the steps made to generate a new file. Subversion, on the otherhand, looks at two separate files and tries to suss out how to make them fit together.
If we're commiting early and commiting often (assuming we agreed by that premise), mercurial and git both have more information to work with when merging the files together and merging becomes painless. When merging becomes painless things like