tidied webaudio helpers api
split code into more manageable chunks and updated helper methods