updating readme
updating header protection and extern protection for preconditioner and matrix interface