Issue #134: Add automatic image derivatives.

Implements #134 as an alternative to #142.

@amitaibu this also has the nice side effect to allow passing arguments to `'callback'` and `'process_callbacks'`.
we can probably remove the word "probably" :)