This is a re-implemetation, in python, of the Kick3 algorithm, published in the Journal of Computational Chemistry: http://onlinelibrary.wiley.com/doi/10.1002/jcc.23420/abstract
It builds on the Python ASE, so you'll need to have a recent-ish version (tested with version >3.6) installed and please additionally cite the ASE https://wiki.fysik.dtu.dk/ase/faq.html.