join: Fix messages about join failures such as banned.

This was broken by 6f7b36d5d0f8a6429c625d825d3277670cdb25e7 in February
2013, as join failures are the only situation where a non-trivial
numeric is passed through from other code to be sent to a client. Fix it
by porting more code from ircd-ratbox 3.1.