modify LBFGS and MYLBFGS so it can be safely restarted from new coords

I save the last step instead of the last coords.  That way the memory is
updated correctly before each step.  It would be cleaner to update the
memory at the end of each step, but MYLBFGS doesn't do it that way and
at the moment I want to keep LBFGS and MYLBFGS as similar as possible.
updates to findTransitionState

primarily use get_state() and set_state() to reset the state for
transverse optimization.
update to FindTransitionState to agree with OPTIM

H0 for Lowest eigenvector search is no longer saved from previous
iteration
redo transverse optimization in class _TransverseWalker
pass tangent_space_quench_params to minimizer

Also, remvove mention of H0 and _transverse_state
get inverted_gradient working in FindTransitionState again
add true nfev count to find lowest eigenvalue functions
findTS: do at least on iteration in finding the lowest eigenvector

also, use the new FindLowestEigenvector class
change overlap criterion in FindTransitonState

change it from .999 to .9999 to agree with optim.