Allows RemoteContext to be used in dicts

This implements equality and hash functions for RemoteContext so that it can be
used as a dictionary key. This was necessary for me to cache the output of a
function that took in a RemoteContext to check remote directory contents.
Merge pull request #541 from Houzz/remote_context_hash

Allows RemoteContext to be used in dicts