Issue#324: warmup linear fixes
Fixes for [Issue#324](https://github.com/huggingface/pytorch-pretrained-BERT/issues/324).

- Using the same schedule functions in BertAdam and OpenAIAdam, fixing `warmup_linear` of OpenAIAdam
- fix for negative learning rate after t_total for `warmup_linear`
- some more docstrings
- warning when t_total is exceeded with `warmup_linear`, implemented inside `.step()` of the optimizer (maybe not that nice). Warning is printed on every batch update.
Great, thanks @lukovnikov!