Better control of history on muc.join

MUCClient's `opts[:history]` now accepts false, or a fixnum to pass in the history/maxstanzas header to control the number of lines of history the server should send.

The current implementation uses a boolean to disable history. The maxstanza's attribute takes an number of history messages to send. This patch lets the client request a number of lines of history, instead of simply disabling it, while keeping backwards compatibility.