Improve genericity. Makes the RTPL a functor so that we don't need adapters anymore.