BUG: Segmentation Fault when read_table is given None
- [x] I have checked that this issue has not already been reported.

~~- [ ] I have confirmed this bug exists on the latest version of pandas.~~ (Not applicable)

~~- [ ] (optional) I have confirmed this bug exists on the master branch of pandas.~~ (Not applicable)

---

**Note**: Please read [this guide](https://matthewrocklin.com/blog/work/2018/02/28/minimal-bug-reports) detailing how to provide the necessary information for us to reproduce your bug.

#### Code Sample, a copy-pastable example

```python
import pyarrow.parquet as pq

pq.read_table(None)
```

#### Problem description

The above snippet will produce a Segmentation Fault, which is highly undesirable. The reason I discovered this, was I had a function that was supposed to return a filepath, but on my first iteration I forgot to return. Thus, when I ran my module with `pq.read_table(generate_fp())`, it produced a Segmentation Fault.

#### Expected Output

Ideally this will raise an `ValueError`, indicating to the user that `None` is an invalid source/filepath.

#### Output of ``pd.show_versions()``

<details>

INSTALLED VERSIONS
------------------
commit: None
python: 3.8.3.final.0
python-bits: 64
OS: Linux
OS-release: 5.4.0-56-generic
machine: x86_64
processor: x86_64
byteorder: little
LC_ALL: None
LANG: en_US.UTF-8
LOCALE: en_US.UTF-8

pandas: 0.24.2
pytest: 3.8.0
pip: 19.2.3
setuptools: 41.2.0
Cython: 0.29.13
numpy: 1.17.4
scipy: 1.1.0
pyarrow: 0.17.0
xarray: None
IPython: 7.14.0
sphinx: 3.1.2
patsy: None
dateutil: 2.6.1
pytz: 2019.1
blosc: None
bottleneck: None
tables: 3.6.1
numexpr: 2.6.9
feather: None
matplotlib: 3.1.1
openpyxl: 2.5.4
xlrd: 1.0.0
xlwt: None
xlsxwriter: 1.1.2
lxml.etree: None
bs4: None
html5lib: None
sqlalchemy: 1.3.16
pymysql: None
psycopg2: 2.8.5 (dt dec pq3 ext lo64)
jinja2: 2.10.3
s3fs: None
fastparquet: None
pandas_gbq: None
pandas_datareader: None
gcsfs: None

</details>
