RotatingFileHandler Logging fixes

Currently if you spawn multiple processes and wish to log to the same file, the filedescriptors will not be changed as the files are filled up and renamed leading to an explosion of inconsistent behavior once a file size limit is reached (every process will again check the original file, and try to spawn a new file to which to log).

These commits create a descriptor that manages the 'stream' from a list of open file handles stored in a module global insure across multiple RFHandlers only one set of rotated files exists per filename.  Tests included.