Support for external file descriptors.
Allows to run i3status directly from your __main__, like this:

    status.register(...) # and so on

    process = subprocess.Popen("i3status", stdout=subprocess.PIPE)
    status.fd = process.stdout

    # start the handler
    status.run()
Moved IO handling out of main class

(for reusability; I use that piece of code now elsewhere
and want to keep that easily in sync)
Splitted IO handling even a bit more :-)