ENH: Hash dataset downloads

Adds hash checking for our datasets. Should be ready for review/merge, assuming Travis is happy.
If the idea is that a bad hash could mean a compromised file, I think it's best to stop execution here as opposed to decompressing the archive...