started refactoring IBasisFunction and continued implementation of gradients for degenerate kernels