This is long-since answered, but I thought I'd add one more note in case anyone comes across this question in a search, as I did. Python's error reporting has evolved since this was asked in 2016, and will now fail with the more helpful:
ValueError: 'm' in __slots__ conflicts with class variable