Organizational Changes

Reorganized code for greater readability. Added context for unclear
methods.