Substantial update - Streamlinling the repo, removing module support and making the implementation a little bit simpler.