Refactor handlers

@ronwsmith I'm opening up this PR just for discussion and review.  It's not quite ready to merge yet but the bulk of the work is done and now I'm just fixing bugs/test failures.  Some more cleanup work will also need to be done to remove commented out code from classes where it has been removed.