Adding a dispatcher interface, w/ tests