This allows jobs to be fully be comparable using the total
ordering function to provide the complexity around the various
functions needed to achieve/perform comparisons.
Also fixes up the various job __eq__ and __lt__ methods to
correctly return 'NotImplemented' on unknown types and adds
a __hash__ to the redis job (so that it can be used in hashable
collections, just like the zookeeper job class).
Change-Id: I8820d5cc6b2e7f346ac329f011f41b76fa94b777