pandas.Series.str raises wrong exception
Use the following code snippet to reproduce:

``` python
>>> import pandas
>>> pandas.Series.str
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "properties.pyx", line 25, in pandas.lib.cache_readonly.__get__ (pandas/lib.c:29334)
AttributeError: 'NoneType' object has no attribute '_cache'
```

Expected: a more clear message like:

``` python
>>> pandas.Series.bjdksalfjak
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: type object 'Series' has no attribute 'bjdksalfjak'
```

The current behaviour sends the wrong message, as I've discovered with some difficulty trying to debug https://github.com/pydata/pandas/pull/5530#issuecomment-33304367
