Improve Krunimir (DiffImages and more)

- the TI machinery is replaced by DiffImages, which are much easier to
  understand
- the parser can parse negated expressions