Use correct DOM exception types for WebAudio

The DOM exceptions are specified in the draft WebAudio spec: http://webaudio.github.io/web-audio-api/

createBuffer should throw NotSupportedError if number of channels or sample rate are invalid, or if length is 0.

createScriptProcessor should throw IndexSizeError if buffer size, or number of input/output channels is invalid.

createChannelSplitter should throw IndexSizeError if number of channels is invalid.

createChannelMerger should throw IndexSizeError if number of channels is invalid.

createPeriodicWave should throw IndexSizeError for invalid lengths.

AudioNodes should throw IndexSizeError if channelCount is not valid.

AudioDestinationNode should throw NotSupportedError when setting channelCount to an invalid value.

AudioBuffer getChannelData should throw IndexSizeError.

AnalyserNode should throw IndexSizeError for bad FFT sizes.

BUG=302775

Review URL: https://codereview.chromium.org/25548004

git-svn-id: svn://svn.chromium.org/blink/trunk@158955 bbb929c8-8fbe-4397-9dbb-9b2b20218538