Updated, and moved things to packages, as well as added documentation