kernel
using lift-json for the message exchange