Investigating... Ah.
The four character minimum was so people would have hopefully more meaningful names than "abc" or "-". Granted, an infinite number of meanings can be applied to a symbol, but four symbols seemed to be a reasonable number, if a little arbitrary.
Second, and more damning, is that "$", and a number of other keyboard characters (&, *, %, #, @, semi-colons, etc.) have "special meaning" in most of the idkfa backend and frontend, such that including those characters can do subtle and potentially destructive things in the hands of the careless or the malicious. I skip the problem altogether by trying to limit usernames to the simplest of character sets. I am a lazy programmer.