Commit Briefs
don't change params if they're the same
avoids a sio_stop in the common case of switching from song that needs similar params (such as tracks in the same album.)
s/player_setrate/player_setup
when the function was renamed, the error messages weren't.
use a strictier pledge for `amused add'
now that we're using canonpath instead of realpath(3), we can drop the rpath pledge promise.
use canonpath instead of realpath(3)
so we get the same behaviour with `add' and `load'
use getprogname(3) instead of __progname
might help with portability, see for e.g. GitHub issue #1
avoid unnecessary initialization
we're just gonna memcpy all over path again a couple of lines before; a smart compiler will probably ignore the initialization anyway.