Commit Briefs
don't reply with a STATUS on MODE change
This is to help amused-web. Change the ctl to send an extra STATUS after a MODE change to preserve the behaviour.
switch from libevent to a smaller, thin wrapper around poll()
libevent is a very cool library, I like its APIs and enjoy using it. However, for amused it is maybe a bit too much since it doesn't deal with too many file descriptors. Amused only needs to monitor one fd for the player process and the currently connected clients. Given that it runs per-user locally, having more than a dozen of fds open is very, very rare.
fix my email address
used @openbsd.org initially by mistake and got copied around in most files. Since this has nothing to do officially with the OpenBSD project, use my own email address.
enrich `amused monitor' reported events
The monitor mode now has access to some additional information other than just the name of the event. The `mode' and `seek' events now report the mode status and the position/duration respectively, allowing consumers of `amused monitor' to show correct and coherent information. It helps in particular applications like `amused-monitor' (in contrib/) that show a progress bar for the current song. Before, they had to run their own timers and periodically synchronize using `amused status', now they can just update the state in the same `amused-monitor' event loop.
fix 'amused load' with empty playlist
it didn't send the IMSG_CTL_COMMIT final message so it would get stuck. This also makes 'amused flush' redundant since it's possible to 'amused load </dev/null'.
add consume mode
the consume mode implicitly drops the tracks from the playlist when played 'till the end (note that skipping over a track doesn't trigger the consume mode - yet?)
drop restart from the list of 'status-like' commands
now it's an alias for 'seek 0', so it doesn't return the status.