Minor formatting change.
Updated requirements and structure of setup.py a bit.
Formatting changes as well as a few todo items.
Restructured packages a bit to reduce some complexity.
Attempt two to commit the package restructuring changes.