This will return the doc of the calling function
    :param function_index: int of how many frames back the program should look
    :param function_name: str of what function to look for
    :return: str of the doc from the target function

def function_doc(function_index=1, function_name=None):
    """
        This will return the doc of the calling function
    :param function_index: int of how many frames back the program should look
    :param function_name: str of what function to look for
    :return: str of the doc from the target function
    """
    frm = func_frame(function_index + 1, function_name)
    try:
        func = getattr(frm.f_locals['self'], frm.f_code.co_name)
    except:
        func = frm.f_globals[frm.f_code.co_name]
    return func.__doc__