Cleanup in apply_mask() signature

Removed parameter "transpose". The output array is now what was obtained
previously with transpose=True. The shape is (time, features), consistent
with scikit-learn's.

The default value for parameter "smooth" is now None instead of False, to
make it consistent with common python practice.

NiftiMasker classes have been adapted. Updated tests as well.
Wrote clean() docstring.
Corrected a bug in clean()

The way detrending of confounds was performed in clean() was incorrect
(wrong axis, one more time).

A test case has been added in test_signals.

Signature of clean() has been modified, input array is now like
scikit-learn's: first dimension is instants, second is features.
Added _detrend() function.

This function is similar to scipy.signal.detrend, but better suited
to the needs of nisl. It is also faster.

Tests have been added as well.
Change _standardize() signature

_standardize now takes as input an array with scikit-learn orientation.

Added tests for _standardize.
Implemented option in _detrend()

Option "type" has been implemented, and test added.
Simplified butterworth() function

A tricky memory allocation scheme was used, and was quite ineffective.
The purpose was to avoid a huge memory allocation, by allocating output
arrays lines one at a time. However, it all ended with a call to
np.asarray(), which did a huge memory allocation, *and* copy everything.

Replaced by a simpler scheme, that turns out to be faster as well.
Comment cleanup