ENH: signal: Add a 1D Savitzky-Golay filter

This PR adds two functions to `scipy.signal`: `savgol_coeffs` and `savgol_filter`.   `savgol_coeffs` computes the coefficients of a Savitzky-Golay FIR filter, with a range of options.  `savgol_filter` applies a such a filter to a numpy array.  It provides several options for dealing with the edges of the data.

This PR is a significant update to the the first version that was here: https://github.com/scipy/scipy/pull/304