Pass channel auth

This way was the best I found that worked. Couldn't use takeAuth and
issueAuth because they are restricted based on your current channel
position. For example, Admin couldn't pass admin, but could pass op and
member (because they can normally give users those spots).

Could probably use some tweaking here and there, but it works as is and doesn't let someone hand out auth they don't have (such as a channel admin passing owners)