BUG: DataFrame.align() should throw a ValueError when trying to align a DataFrame with a Series and specifying axis=1
#### A small, complete example of the issue

```
import pandas as pd
import numpy as np

N = 1000
L = np.random.randn(N)
F = pd.DataFrame({'X':L})
S = pd.Series(L)

X = F.align(S,axis=1)
```

This code should throw `ValueError: No axis named 1 for object type <class 'pandas.core.series.Series'>` just like `S.align(S,axis=1)` would, instead it goes through and creates a huge NxN-sized dataframe filled with nothing but `NaN`. For bigger values of `N` this behaviour leads to `MemoryError`.
#### Output of `pd.show_versions()`

<details>
python: 2.7.12.final.0
pandas: 0.18.1
</details>
