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

I agree with the unnecessary temporaries. But probably it needs some rethinking on the inner workings of the arraysplit function.

Regarding the repeated plan creation, we could add a method to periodogram where one can pass an fft plan, which is then used for the fft. But this requires some reworking and may be left for another pull request.  The goal of this one was to add window functionality only.