Modified how getSpies work:
	Created bChatJoinListener to handle onJoin events.
	Created bChatQuitListener to handle onQuit events.
	if player has bchatmanager.spy add the player to spies list onJoin and
remove him onQuit.

Added a warning for when the player sends a message but no one will
receive it. Enable/Disable with the new option
other.chat-range-warn-no-recipient

Made @ops optional. Enable/Disable with the new option
toggles.op-message-enabled

When sending global message without permission the event is canceled
instead of sending a local !message