move handlers into roles