compacting diffs and limiting their lengths

- very well tested
- things cleaned up
0.3.0 compacts huge diffs and limits their line length