Overlap-save FIR filtering

This is substantially faster than filt() when the filter is long.
The function firfilt() heuristically chooses whether to use time domain
or FFT-based filtering depending on the estimated speeds of the two
techniques.

Implementation notes:

- fftfilt() computes the optimal chunk size for the FFT based on
  average times on my computer for transforms of powers of 2 up to
  2^28. There might be a way to get relative transform times from FFTW,
  but if there is it doesn't seem to be documented.
- fftfilt() copies data to temporary arrays. It is in principle
  possible to perform the transform in place if the chunks are
  processed in reverse order, provided that the chunks will be 16-byte
  aligned. I tried this and it wasn't substantially faster.
Adding initial documentation skeleton.
Merge branch 'master' of github.com:JuliaDSP/DSP.jl into docs
Merge pull request #5 from simonster/fftfilt

Overlap-save FIR filtering
Merge pull request #6 from jfsantos/docs

Docs
Tabs -> spaces in filter_design.jl
Add documentation for fftfilt to doc/, make README link to rtfd
Add discrete prolate spheroid sequences (Slepian tapers)
Try to make dpss work with Julia 0.2
Merge pull request #7 from simonster/dpss

Add discrete prolate spheroid sequences (Slepian tapers)
Discard imaginry part of coefficients when converting to TFFilter

We seem to be as numerically precise as other implementations, but for
large Butterworth filters we presently return imaginary coefficients
due to limited floating point precision. MATLAB just seems to discard
these, while SciPy keeps them and then presumably ignores them when
filtering.

I also changed Butterworth() to use sinpi() and cospi(), because we
can, and they should be a little more accurate.
Add tests for filter design

This confirms the correctness of our results and compares accuracy vs.
MATLAB for all but the bilinear step in digital filter design. I am a
little suspicious that bilinear step is not particularly numerically
precise, but I have no good way of testing that at the moment, since I
can't perform the calculations with extended precision.
Merge pull request #11 from simonster/filter-design-tests

Add tests for filter design
adds unwrap function to util module
Ensure Butterworth poles are always exact complex conjugates
fixes includes
Don't rescale coefficients when testing

The TFFilter constructor already rescales them
Parametrize types to improve type inference
now unwrap works with multidimensional arrays
adds unwrapping with user-specified range