MNE sample data - storage location and improved error handling

The datasets directory (or data directory) are retrieved using the following priority :
1. the keyword argument 'path' provided.
2. the environment variable MNE_DATASETS_SAMPLE_PATH
3. intelligent guess '../../examples' directory
4. "~/mne_data" directory

If the directory obtained from 1, 2, 3 above does not exist or have write permissions, ~/mne_data will be created and the data downloaded into it. Tested on Ubuntu 14.04. 

I plan to have a fresh Ubuntu installation soon and can test if it works out of the box with python-mne package.
and include backward compatibility.