Moved some reusable code into a new Message module.
Reorganized the hierarchy to move everything parallel-related under Parallel.
Updated to follow the new driver interface.