Cleanup of module ready for first release, need to implement some object caching first though, now going to add this!