Returns a non-naive datetime.datetime.

    Interprets numbers as ms-since-epoch.

    Parameters
    ----------
    date : `int` or `datetime.datetime`
        The datetime to convert

    default_tz : tzinfo
        The TimeZone to use if none is found.  If not supplied, and the
        datetime doesn't have a timezone, then we raise ValueError

    Returns
    -------
    Non-naive datetime

def to_dt(date, default_tz=None):
    """
    Returns a non-naive datetime.datetime.

    Interprets numbers as ms-since-epoch.

    Parameters
    ----------
    date : `int` or `datetime.datetime`
        The datetime to convert

    default_tz : tzinfo
        The TimeZone to use if none is found.  If not supplied, and the
        datetime doesn't have a timezone, then we raise ValueError

    Returns
    -------
    Non-naive datetime
    """
    if isinstance(date, (int, long)):
        return ms_to_datetime(date, default_tz)
    elif date.tzinfo is None:
        if default_tz is None:
            raise ValueError("Must specify a TimeZone on incoming data")
        return date.replace(tzinfo=default_tz)
    return date