Added functionality for using windows in periodogram functions.

Hi, 

Here is a initial pull request that adds some functionality for using windows in the periodogram functions. It is an initial PR to start a discussion on this topic and on the implementation. No tests and additional documentation have been added yet.

The way we should provide the window functionality is based on passing a function to welch_pgram and bartlett_pgram that accepts a single integer argument and return the window values in an array of that length. This array will be multiplied by the data when the call to periodogram is done.

I am not yet satisfied with the approach of passing an array of ones in the case no function argument is provided, as it was done for the spectrogram function and which I copied from.

Lets us discuss here how to best implement this functionality and I will modify the code as need for the final merge.

Regards, 

Davide

This creates a large number of unnecessary temporaries. There is also a large amount of overhead from FFTW plan creation. Achieving maximal performance now would require using the undocumented FFTW plan API, but this should be revisited once JuliaLang/julia#6193 is merged.