Add initial draft of native redo-ifchange impl.

This basically still mimics jekor's implementation, but we're getting
close to a point in which we'll be able to perfect things
transparently.

One concern of mine is how much I'm mixing the IO with the logic. I
would like to be more declarative, but as far as prototyping goes, I
think this is the fastest, most effective, approach.
Standardize code-style.

I'm trying to use as much of the `.function` notation as possible, as it
really does clean-up the syntax, IMO. I'd say we're pretty close to
issue #1, but we have to get at least till the point jekor's
implementation is at.