Fixed an obiwan error in the handlers due to changing how their args
work.

Cleaned up handler code structure to make it more general and with less
boilerplate.