Bug 974410: Added watcher classes for Unix file descriptors, r=kyle

These new classes encasulate file-descriptor watchers, basic file
descriptors, and socket connections. Each class contains callback
methods for it's implemented functionality. Users should inherit
from the classes and overload the callback with their own code.
Bug 974410: Inherit UnixSocketImpl from UnixFdWatcher, r=kyle

With this patch UnixSocketImpl inherits from UnixFdWatcher. The
new base class implements general file-descriptor handling and
I/O watchers.
Bug 974410: Inherit UnixSocketImpl from UnixSocketWatcher, r=kyle

The base class UnixSocketWatcher handles the connection state of
the socket. UnixSocketImpl overrides UnixSocketWatcher's callback
methods for implementing it's functionality.
Bug 974410: Cleanup UnixSocketImpl, r=kyle

This patch cleans up the implementation of UnixSocketImpl by

 - inlining all calls to SetUpIO,
 - removing the unsued constant SOCKET_RETRY_TIME_MS, and
 - separating logging from Bluetooth.