Reorganizing project into namespaces.

Initial break-up of different tasks.