started refactoring Kernel to separate execution models