don't define class_eval on Kernel

we don't need to do this
just switch behaviour based on type