I have heard that, for example, MurmurHash2 is not "incremental" but MurmurHash3 is incremental. What does this mean? And why is it useful?
Incremental hash functions suited for situations where if a previously hashed message, M is slightly updated into a new message, M*, then it should be fairly quick to compute the hash value of the updated message, M*. This is done by computing the new hash, m*, from the old hash value, m, in contrast to conventional hash functions that have to recompute the new hash, m* from scratch, which takes a longer time.
http://www.cs.berkeley.edu/~daw/papers/inchash-cs06.pdf
They're useful due to the fact that they're easier to compute and therefore less expensive in terms of computing power and time.
However they're not suited to every situation. That paper from Berkeley has some nice examples of when they can be useful in the Introduction section.