Feature/kernel modules

I expect this to work, but its not tested at all