Left join without passing `right_on` raises TypeError instead of intended ValueError
#### Code

```python
import pandas as pd

df1 = pd.DataFrame([{'boro': 'B',
  'from_st': 'EAST FORDHAM ROAD',
  'main_st': 'DECATUR AVENUE',
  'order_no': 'P-00097673',
  'sos': 'W',
  'to_st': 'EAST  193 STREET'}])

df2 = pd.DataFrame([{'SRP_Seq': 3,
  'SR_Arrow': 'W  ',
  'SR_Distx': 138,
  'SR_Mutcd_Code': 'PS-101BA  ',
  'Sign_description': 'NO PARKING (SANITATION BROOM SYMBOL) WEDNESDAY 8AM-9AM --> (SUPERSEDES R7-88-9RA)',
  'Unnamed: 7': '',
  'Unnamed: 8': '',
  'boro': 'B',
  'order_no': 'P-01287481'}])

pd.merge(df2, df1, how='left', left_on='A')

```
#### Problem description

Unexpected exception is raised when doing a left join without passing arguments for `right_on`.

#### Expected Output

```
ValueError: len(right_on) must equal len(left_on)
```

#### Actual Output

```
TypeError: object of type 'NoneType' has no len()
```

<details>

```
INSTALLED VERSIONS
------------------
commit: None
python: 3.5.3.final.0
python-bits: 64
OS: Linux
OS-release: 4.19.26-03278-g71dc68f9c9d0
machine: x86_64
processor: 
byteorder: little
LC_ALL: None
LANG: en_US.UTF-8
LOCALE: en_US.UTF-8
pandas: 0.24.2
pytest: None
pip: 19.1.1
setuptools: 41.0.1
Cython: None
numpy: 1.16.4
scipy: 1.3.0
pyarrow: None
xarray: None
IPython: 7.5.0
sphinx: None
patsy: None
dateutil: 2.8.0
pytz: 2019.1
blosc: None
bottleneck: None
tables: None
numexpr: None
feather: None
matplotlib: 3.0.3
openpyxl: None
xlrd: None
xlwt: None
xlsxwriter: None
lxml.etree: None
bs4: None
html5lib: None
sqlalchemy: None
pymysql: None
psycopg2: None
jinja2: None
s3fs: None
fastparquet: None
pandas_gbq: None
pandas_datareader: None
gcsfs: None
```
</details>
