Resolve #1298

* use serial.load in CIFAR10._unpickle
* remove "scripts/tutorials/grbm_smd/make_dataset.py" from pep8 whitelist
* refine serial.load for interoparability between Python 2 and 3
* remove N and np, aliases of numpy
You're right. The code have to fixed. 

`BadPickleGet` is defined as a subclass of `UnpicklingError` only in `cPickle`. That's why I aliased it to `UnpicklingError` in the earlier PR. 

After reading your comments, I inspected source codes of `pickle` and `cPickle` module in Python 2 and 3, and found that Python 3 `pickle` raises `KeyError` ([source](https://github.com/python/cpython/blob/3.4/Modules/_pickle.c#L5466)) when Python 2 `cPickle` raises `BadPickleGet` ([source](https://github.com/python/cpython/blob/2.7/Modules/cPickle.c#L4205)).

I'll fix it soon.