Add PYTEST_TIMEOUT for CircleCI test jobs
⚠️  Before merging, we need to **run the full tests on CircleCI** to see if there are slower tests that will fail and decide what to do with them.

# What does this PR do?
Add `PYTEST_TIMEOUT: 30` for CircleCI jobs:
```
environment:
    ...
    PYTEST_TIMEOUT: 30
```
The main goal is to avoid CircleCI's default 10 minute timeout that cancels the jobs. Also with this PR, we can see clearly which test (s) timeout.


_The documentation is not available anymore as the PR was closed or merged._<|||||>I like the idea of getting a hard error instead of silently getting new tests that slow down the CI by quite a lot! Now we just ahve to get to all tests passing below that threshold 😅 
For the examples, you can authorize 60s before timing out as those are end-to-end small training so take more time.<|||||>Currently set to `PYTEST_TIMEOUT: 120`. As mentioned on Slack, tests sometimes get much longer to run. For example,

```
test_modeling_data2vec_audio.py::Data2VecAudioModelTest::test_mask_time_prob_ctc

44.16s call 
37.64s call     
12.46s call     
12.60s call 
```

and 

```
test_modeling_plbart.py::PLBartBaseIntegrationTest::test_base_generate

48.18  call
11.20s call 
11.53s call
```

This makes it difficult to determine a good threshold that won't be flaky.

### Current longest 2 tests 
(observed on a CircleCI workflow run):

```
73.08s call     
test_pipelines_image_segmentation.py::ImageSegmentationPipelineTests::test_pt_DetrConfig_DetrForSegmentation_notokenizer_DetrFeatureExtractor

65.33s call
longt5/test_modeling_flax_longt5.py::FlaxLongT5ModelTest::test_jit_compilation
```<|||||>Reverted the change in `setup.py` (was for running the full tests). The final timeout limit is 2 minutes (to avoid flaky failures).
I will merge this PR today unless @sgugger has a different opinion.