Accept Message in 'Session#logon'

`MessageFactory` returns a `Message` instance. To avoid casting that into a `Logon` instance, accept a `Message` instance in `Session#logon`.