big change to the handler module api. probably broke stuff