A Guide to Python's Magic Methods