Fix pylint warning for overriding built-in 'file' in log.startLogging().

 * FIX overriding Python 2.x builtin 'file', by changing file→log_file.
Don't override log module global variable 'publisher' in log.startLogging().

 * FIX bug where the module variable log.publisher was overridden in
   log.startLogging(), by checking first to see if 'publisher' exists, and
   creating it as a global variable if not.
Add missing import for traceback module to log module.

 * ADD traceback module, used in log.exception().
Remove unnecessary import types.NoneType from log module.
Change BridgeDBLogPublisher.exception method to a function.

 * ADD more documentation on how it can be used.
 * CHANGE reporting mechanism to use the observers, rather than just printing
   the traceback.
Move BridgeDBLogPublisher.folder to be a class attribute.

 * ADD an attribute Sphinx docstring for it.
Update BridgeDBLogPublisher docstring to be accurate.
Add default permissions for logfiles.
Remove unused Exception variable in log.py.
Avoid setting log.timeFormat twice.
Remove superfluous isinstance() check in log.BridgeDBFileLogObserver().
Fix typo and add kwarg default setting info to BridgeDBLogPublisher docstring.
Remove unused Exception variable from log.py.
Remove unused commented out code from log.py.