DataFrame __add__ broadcasting error
Parking this for later reference.

```
dti = pd.date_range('2016-01-01', periods=3)
tdi = pd.TimedeltaIndex(['1 Day', '2 Days', 'NaT'])
ser = pd.Series(tdi)
df = pd.DataFrame({'A': dti, 'B': tdi})

>>> df + tdi
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "pandas/core/ops.py", line 941, in f
    other = _align_method_FRAME(self, other, axis)
  File "pandas/core/ops.py", line 875, in _align_method_FRAME
    right = to_series(right)
  File "pandas/core/ops.py", line 850, in to_series
    given_len=len(right)))
ValueError: Unable to coerce to Series, length must be 2: given 3

>>> df + ser
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "pandas/core/ops.py", line 946, in f
    return self._combine_series(other, na_op, fill_value, axis, level)
  File "pandas/core/frame.py", line 3958, in _combine_series
    try_cast=try_cast)
  File "pandas/core/frame.py", line 3972, in _combine_series_infer
    try_cast=try_cast)
  File "pandas/core/frame.py", line 3995, in _combine_match_columns
    try_cast=try_cast)
  File "pandas/core/internals.py", line 3403, in eval
    return self.apply('eval', **kwargs)
  File "pandas/core/internals.py", line 3297, in apply
    applied = getattr(b, f)(**kwargs)
  File "pandas/core/internals.py", line 1307, in eval
    try_cast=try_cast, mgr=mgr)
  File "pandas/core/internals.py", line 1362, in eval
    result = get_result(other)
  File "pandas/core/internals.py", line 1330, in get_result
    result = func(values, other)
  File "pandas/core/ops.py", line 893, in na_op
    mask = notna(xrav) & notna(yrav)
ValueError: operands could not be broadcast together with shapes (9,) (3,) 
```

The first op (DataFrame + TimeDeltaIndex) could be intentional depending on the broadcasting convention.  The second one I'm pretty sure should behave like:

```
>>> pd.DataFrame({"A": df["A"] + ser, "B": df["B"] + ser})
           A      B
0 2016-01-02 2 days
1 2016-01-04 4 days
2        NaT    NaT
```