Bug 908669 - Use band-limited impulse trains (BLIT) for OscillatorNode. r=rillian

This fixes the aliasing noise in the default oscillator types.
Bug 865256 - Part 3a: Add AudioBufferPeakValue utility. r=ehsan

From 6c057c02970c79d620527d08bc3755491c99b1d3 Mon Sep 17 00:00:00 2001
This is an equivalent, C-only implementation of blink's
VectorMath::maxmgv or Apple's vDSP_maxmgv. It finds the
maximum absolute value of the elements in a float buffer.
Used by blink's PeriodicWave implementation for normalization.
Bug 865256 - Part 3b: Add a complex->real ifft to FFTBlock. r=ehsan

From ea43bceaf8f6dd2c44d7f55a45f770be19b335a5 Mon Sep 17 00:00:00 2001
Currently FFTBlock only holds the complex frequency domain data
internally, reading and writing to external time domain data
buffers. For PeriodicWave we need to create a real, time domain
signal from real and imaginary frequency domain data. This method
does this without touching the internal output buffer at all.
FFTBlock is just used as a wrapper for kiss_fft_cfg.
Bug 865256 - Part 3c: Import blink's PeriodicWave. r=ehsan

From 3807300c75ae70f004b76cbce023e59a0367e09b Mon Sep 17 00:00:00 2001
This is the original code from blink svn trunk r157670 for reference.
This commit has no porting or build support, to make subsequent changes
easier to identify.
Bug 865256 - Part 3d: Port blink's PeriodicWave to gecko. r=ehsan

Changes to use gecko infrastructure.
Bug 865256 - Part 4: Implement custom waveforms. r=ehsan,padenot

Copy the periodicWave data into a shareable buffer.

Add a SetBuffer call to send the buffer data to the
OscillatorNodeEngine. Call into blink's PeriodicWave
implementation to generate bandlimited tables bracketing
the desired frequency and interpolate the output data
from them.

Change the PeriodicWave constructor to only take one
length, since both arrays must be the same size.

Change OscillatorNode's SetType to throw INVALID_STATE
instead of NOT_IMPLEMENTED if js tries to assign
type = 'custom' directly.
bug 913092 - remove unnecessary nsIPermissionManager in TestSTSParser r=mcmanus
Bug 917441 - Remove dependence of IonBuilder on ScriptAnalysis, r=jandem.