Disallow .__call__() as workaround for non-named functions
Currently this script:
```python
import pandas as pd
funcs = [lambda: 1]
pd.eval("funcs[0]()")
```

Fails with:

    TypeError: Only named functions are supported

however this can easily be worked around by adding `.__call__`:

```python
pd.eval("funcs[0].__call__()")
```

I'm assuming we don't want to allow this workaround. This PR ensures that it will fail with the same error.
It's not about lambdas. In this context "named" means a variable name or an attribute - pandas doesn't allow calling arbitrary expressions. For example `funcs[0]` is a subscript expression so it can't be called.  @jreback ping! Hello @alexmojaki! Thanks for updating this PR. We checked the lines you've touched for [PEP 8](https://www.python.org/dev/peps/pep-0008) issues, and found:





There are currently no PEP 8 issues detected in this Pull Request. Cheers! :beers: 

##### Comment last updated at 2020-05-10 17:52:29 UTC @jreback pong! thanks @alexmojaki 