Added the self-regulating steps, as well as some comments and some DOCSTRINGS woo!