val_dataloader is not optional in distributed_backend='ddp'
Describe the bug
val_dataloader function is kept optional but a line in the code does not check for 'if self.val_dataloader is not None'. Which leads to the following error:
File "/misc/vlgscratch4/FergusGroup/ananya/pyenv/py3.6/lib/python3.6/site-packages/pytorch_lightning/models/trainer.py", line 500, in get_dataloaders
for dataloader in self.val_dataloader):
TypeError: 'NoneType' object is not iterable
File: models/trainer.py
line 500
To Reproduce
Steps to reproduce the behavior:


Not write the optional function: val_dataloader


Use the following trainer configuration.
trainer = Trainer(
experiment=exp,
checkpoint_callback=checkpoint_callback,
distributed_backend='ddp',
gpus=args.gpu_id,
amp_level='O2',
use_amp=True,
max_nb_epochs=args.epochs,
progress_bar=True
)


Expected behavior
Code should ignore "all(isinstance(dataloader, DistributedSampler) for dataloader in self.val_dataloader)" check if self.val_dataloader is None.
Environment:

PyTorch 1.1.0
Cuda 10.0
test-tube 0.6.7.6
pytorch-lightning 0.4.6