Implement NativeTonePlayer. Fix #656

Fix #656 and a few tiny bugs related to audio playing.
Nit: no need for this property