Adressed comments from @abergeron and @nouiz

Added __eq__ and __hash__ methods.
Fixed c_code_cache_version
Check if axis=None before bailing out.