ENH: Add an axis parameter to DataFrame.diff
+1 on adding this parameter. I think the axis should be flipped though, right? `axis=0` is a difference along the index, i.e. `df.iloc[1] - df.iloc[0]`. Similar to how `cumsum` operates along the index.

See also `np.diff`.
 @TomAugspurger: You're right about `np.diff` having a different convention. All of the internal diff machinery (in core.internals.Block, core.common, and C implementations in algos) has this opposite convention as well, but maybe I'll just invert the axis in this public facing `DataFrame.diff` method.
 @evanpw you need to pass the axis as `self._get_block_manager_axis(axis)` which handles this. frames (only) are represented with inverted axes.
 Ahh, that explains it.
 @evanpw thanks!
