Complete Session tests

All interfaces except the IME ones have been implemented; the IME
interfaces seem to have no Driver implementations.

There are still some selendroid test failures and one weird
much farther apart than they should be.
Improve error reporting of proxy message duplicates
Fix proxy tries to read directories as files
Fix error messages are being double-logged
Fix setHeartbeatInterval is not chainable
Fix uncaught exceptions in runner being silently discarded