KLApproxDiagonalInferenceMethod (the third KL method)

@karlnapf 
Take a look at this.
Note that it may have similar issues you mentioned in other KL methods.
I will correct all of them tomorrow.
Just have it run to ensure everything work well.
kernel should be positive definite.
If not, one trick is adding a K+lambda*eye(n) to avoid some numerical issues, where lambda is a small scalar.
What do you think?