index: use %o formatting from debug v1
index: do not call `flush()` binding when the stream finishes "naturally"

That is, when the .end() function is called on the Speaker instance,
don't call the `flush()` native binding on the `audio_output_t` struct.

It appears that `flush()` forcefully stops the audio output, meaning
that it didn't do what I originally thought that it did. It seems that
the correct way to handle it is to just call `close()` without calling
`flush()` when the stream finishes successfully.

When the user calls `close()` explicitly, then the `flush()` binding
will still be invoked in order to stop the audio output ASAP.

Fixes #5.
Closes #8.
Closes #10.
Fixes #17.
Fixes #19.