Some world saving and session management fixes:
- Changed .save() to be synchronous and use async saving for autosave.
- Save the IP address on session creation in case it gets closed later.
- Don't create a player if the session has closed during the login check.
Various network and usability fixes:
- Placing items with data (logs, wool) no longer removes the data.
- Trying to send messages in Handshake now uses same error as other protocols.
- Write timeout pings are only sent in Play.
- Closed channel and broken pipe errors are quieter.
- Log rotation happens before a record is shown and logs aren't colorized.
Added extra isActive() during establishment check, improved log rotation.