Merge pull request #44 from smcantab/new_fire

Re-implemented FIRE, added orthogonalization classes and numerical method to compute lowest eigenvalue, added interface to distance to pass a pointer to the distance class without templating the user class
Merge branch 'master' of https://github.com/pele-python/pele into new_fire
bug fix to tolerance in modified_fire
Merge remote-tracking branch 'upstream/master' into new_fire