Boolean Kernels of Context-Free Languages