Ensure equality comparisons work for Source objs

Implement functions eql? and hash as they are required for
proper evaluation of functions like uniq.
Merge pull request #66 from craigtracey/source-comparison

Ensure equality comparisons work for Source objs