Added location caching proxy function to sample app

Also added __hash__ and __eq__ methods to transperth.location.Location so we can use locations as comparable dictionary keys.

Some methods have been modified to allow LocationTs as well as Locations
Plumbed in location caching proxy function