Squashed version of @noisesmith's irclj version update

This is the same diff as #102, but with the weird self-conflicting history all squashed out into a single commit.
I'd just write this as `(string/join " " (cons mode args))`.