Issue #2829: refactoring cc.WebAudioEngine for compatibility

Refactoring cc.WebAudioEngine for compatibility, but there have some problems in AudioEngine:
1. It returns a null AudioID when the audio source doesn't preload in WebAudioEngine.
2. It only one sound can play in SimpleAudioEngine