Update the directory structure and build process.

This new structure will enable us to write a comprehensive suite of
tests for redo using bed[1]. It is related to #2. This is an attempt to
battle test the approach I propose in bed using colorize and other
modules I plan to write. It enable us to get stricter about how our
implementation of redo behaves.

[1] - https://github.com/yamadapc/bed