simplify auto scroll & make it work, like, always
make it all potentially more stable
prevent hot number changing code from running on current loop, which would effectively execute calls out of order
remove testing parts & move strings to xml
remove final variables and rely on instance fields instead
change message that appears when fragment can't scroll to line
changing because now the fragment attempts to scroll on every visibility change
make sure 9patch is not downscaled to zero
which results in a crash on ldpi
Merge pull request #149 from oakkitten/autoscroll

Auto-scroll to last unread hot message, if any, whenever buffer becomes visible
remove unnecessary xml drawables
Implement ping command
Preferences for ping
Sleep before ping, not after
Don't send ping if we've received data recently
Interrupt pageWriter on disconnect
Disable DEBUG_NOTIFICATIONS
Refactor startThreadedConnectLoop
Interrupt current RelayConnection on connect

* Use SocketChannel, which can be interrupted.
* Always interrupt the connector thread on disconnect if it's running.
* Fixes a bug on slow connections, or firewalls that drop packets, where
  an infinite number of connections will be created in the connect loop.
Only connect if network is available
Use ScheduledExecutorService to send relay pings
Refactor PongHandler

* Use synchronized methods to simplify wait/notify.
* AtomicLong use now unnecessary due to synchronization.
* Fix bug where waitForPong may wait longer than timeout.