'Print out a formatted exception traceback.
Optional arguments:
- out: an open file-like object to direct output to.
- tb_offset: the number of frames to skip over in the stack, on a
per-call basis (this overrides temporarily the instance\'s tb_offset
given at initialization time.'

def __call__(self, etype=None, evalue=None, etb=None, out=None, tb_offset=None):

    if (out is None):
        out = self.ostream
    out.flush()
    out.write(self.text(etype, evalue, etb, tb_offset))
    out.write('\n')
    out.flush()
    try:
        self.debugger()
    except KeyboardInterrupt:
        print '\nKeyboardInterrupt'
