Massive code cleanup and restructuring. Made drush patch-project more interactive.