Fixed up code dealing with weakref, and some other things, not sure what
Honestly idk wtf just happened, but the code works
Update the readme and docstrings