Added workaround to overcome Octave's convn() bug.

+ Added wrapper function 'custom_convn' to choose between three ways of
computing the convn(). The default behaviour is to use convn() and to
choose between 'valid' and 'same' according to the platform(Matlab or
Octave).
A third option is to use 'fft' which uses FFT based convolution.
Although this is very slow, the library can be compiled to support GPU.
Check the code for more info.
+ Added an utility function 'isOctave()' to tell which platform is being
used.
+ TODO: We should use custom_convn() everywhere, but this may slow
things down too much.
+ test_cnn_gradients_are_numerically_correct fails with convn(,,'same')
but works with convnfft.
Started work in creating dataset

Added an script to fetch mfccs from VoxForge.
Solved some problems in the crawling script. Still work in progress.
Removed global variables from script.

Also, added error handling and changed output file format.
Changes in cnn.
Merge branch 'master' of https://github.com/albertoandreottiATgmail/DeepLearnToolbox

Conflicts:
	data/generate_mfcc.m
Rolled back some commits.
fix tests, fail early for CNNs
update readme
Update CONTRIBUTING.md
travis
run tests
dont sample in the last hidden layer activation in RBM, fixes #65
fix visualize
check input to DBNs, fixes #40
prettier this way
Merge branch 'master' of https://github.com/albertoandreottiATgmail/DeepLearnToolbox
Rolled back to master.
Merge branch 'master' of https://github.com/albertoandreottiATgmail/DeepLearnToolbox
merged upstream/master