RBERT implementation
As per #1250, this PR describes an additional classification head for BERT for relationship classification tasks. This work is originally documented in [this paper](https://arxiv.org/pdf/1905.08284.pdf). In addition, the new head can be used with RoBERTa, producing a new SOTA as far as I know....

I have included a new example script and associated utils file that demonstrate how it can be used:
```run_semeval.py```, and updated the README.md in ```examples``` accordingly.

Note, contrary to what I said in the original issue, there is no need for new tokenisation classes - rather, strings simply need to be preprocessed with entity delimiting characters prior to tokenisation, and the input ID's of these characters passed to the classification head (see included example for details)
# [Codecov](https://codecov.io/gh/huggingface/transformers/pull/1301?src=pr&el=h1) Report
> Merging [#1301](https://codecov.io/gh/huggingface/transformers/pull/1301?src=pr&el=desc) into [master](https://codecov.io/gh/huggingface/transformers/commit/2dc8cb87341223e86220516951bb4ad84f880b4a?src=pr&el=desc) will **increase** coverage by `0.22%`.
> The diff coverage is `96.35%`.

[![Impacted file tree graph](https://codecov.io/gh/huggingface/transformers/pull/1301/graphs/tree.svg?width=650&token=9qOlN6Hb1c&height=150&src=pr)](https://codecov.io/gh/huggingface/transformers/pull/1301?src=pr&el=tree)

```diff
@@            Coverage Diff             @@
##           master    #1301      +/-   ##
==========================================
+ Coverage   84.69%   84.91%   +0.22%     
==========================================
  Files          84       85       +1     
  Lines       12596    12840     +244     
==========================================
+ Hits        10668    10903     +235     
- Misses       1928     1937       +9
```


| [Impacted Files](https://codecov.io/gh/huggingface/transformers/pull/1301?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [transformers/tests/modeling\_bert\_test.py](https://codecov.io/gh/huggingface/transformers/pull/1301/diff?src=pr&el=tree#diff-dHJhbnNmb3JtZXJzL3Rlc3RzL21vZGVsaW5nX2JlcnRfdGVzdC5weQ==) | `97.47% <100%> (+1.09%)` | :arrow_up: |
| [transformers/configuration\_rbert.py](https://codecov.io/gh/huggingface/transformers/pull/1301/diff?src=pr&el=tree#diff-dHJhbnNmb3JtZXJzL2NvbmZpZ3VyYXRpb25fcmJlcnQucHk=) | `100% <100%> (ø)` | |
| [transformers/modeling\_roberta.py](https://codecov.io/gh/huggingface/transformers/pull/1301/diff?src=pr&el=tree#diff-dHJhbnNmb3JtZXJzL21vZGVsaW5nX3JvYmVydGEucHk=) | `74.54% <92.59%> (+3.32%)` | :arrow_up: |
| [transformers/tests/modeling\_roberta\_test.py](https://codecov.io/gh/huggingface/transformers/pull/1301/diff?src=pr&el=tree#diff-dHJhbnNmb3JtZXJzL3Rlc3RzL21vZGVsaW5nX3JvYmVydGFfdGVzdC5weQ==) | `85% <93.67%> (+5.49%)` | :arrow_up: |
| [transformers/modeling\_bert.py](https://codecov.io/gh/huggingface/transformers/pull/1301/diff?src=pr&el=tree#diff-dHJhbnNmb3JtZXJzL21vZGVsaW5nX2JlcnQucHk=) | `88.92% <96.15%> (+0.75%)` | :arrow_up: |

------

[Continue to review full report at Codecov](https://codecov.io/gh/huggingface/transformers/pull/1301?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/huggingface/transformers/pull/1301?src=pr&el=footer). Last update [2dc8cb8...4bcfa63](https://codecov.io/gh/huggingface/transformers/pull/1301?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
<|||||>Ok, I went through the PR.

This is a very nice work @RichJackson!

One thing we should simplify though is to not have a separate configuration for RBERT and roberta. I will update a bit the configuration classes so we can safely add new parameters in them and have them initialized to defaults values when loading from pretrained config.

Let me do that now in this PR.<|||||>Actually I can't push on your PR so I'll create a new one to update that.