Test: use xdist
on top of #15369
xref #15341

``pytest pandas --skip-slow --skip-network -m "not single" -n 4``

```
(pandas) bash-3.2$ ./test_fast.sh 
==================================================================================================== test session starts ====================================================================================================
platform darwin -- Python 3.5.2, pytest-3.0.5, py-1.4.31, pluggy-0.4.0
rootdir: /Users/jreback/pandas, inifile: setup.cfg
plugins: cov-2.4.0, xdist-1.15.0
gw0 [11470] / gw1 [11470] / gw2 [11470] / gw3 [11470]
scheduling tests via LoadScheduling
.....s...ss......s...s....s....s.....s...s...s.s......................s..............s......s...s................s......s...ss.....s......................................................................................................................................s..s.s.s......................................................................................................................................................................................s.```

```
=============== 11046 passed, 424 skipped in 170.96 seconds 
```
# [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/15369?src=pr&el=h1) Report
> Merging [#15369](https://codecov.io/gh/pandas-dev/pandas/pull/15369?src=pr&el=desc) into [master](https://codecov.io/gh/pandas-dev/pandas/commit/1bcc10da51c61886362d9d4d4eeafe604ab288ea?src=pr&el=desc) will **decrease** coverage by `-0.03%`.
> The diff coverage is `n/a`.


```diff
@@            Coverage Diff             @@
##           master   #15369      +/-   ##
==========================================
- Coverage   90.44%   90.42%   -0.03%     
==========================================
  Files         134      134              
  Lines       49357    49357              
==========================================
- Hits        44642    44632      -10     
- Misses       4715     4725      +10
```


| [Impacted Files](https://codecov.io/gh/pandas-dev/pandas/pull/15369?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [pandas/util/testing.py](https://codecov.io/gh/pandas-dev/pandas/compare/1bcc10da51c61886362d9d4d4eeafe604ab288ea...0f408f17a20d27c11bc66c3fdb58c82abb886698?src=pr&el=tree#diff-cGFuZGFzL3V0aWwvdGVzdGluZy5weQ==) | `82.44% <ø> (-0.94%)` | :x: |
| [pandas/tseries/offsets.py](https://codecov.io/gh/pandas-dev/pandas/compare/1bcc10da51c61886362d9d4d4eeafe604ab288ea...0f408f17a20d27c11bc66c3fdb58c82abb886698?src=pr&el=tree#diff-cGFuZGFzL3RzZXJpZXMvb2Zmc2V0cy5weQ==) | `97.13% <ø> (-0.13%)` | :x: |
| [pandas/core/frame.py](https://codecov.io/gh/pandas-dev/pandas/compare/1bcc10da51c61886362d9d4d4eeafe604ab288ea...0f408f17a20d27c11bc66c3fdb58c82abb886698?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvZnJhbWUucHk=) | `97.87% <ø> (ø)` | :white_check_mark: |
| [pandas/util/terminal.py](https://codecov.io/gh/pandas-dev/pandas/compare/1bcc10da51c61886362d9d4d4eeafe604ab288ea...0f408f17a20d27c11bc66c3fdb58c82abb886698?src=pr&el=tree#diff-cGFuZGFzL3V0aWwvdGVybWluYWwucHk=) | `47.82% <ø> (+2.89%)` | :white_check_mark: |

------

[Continue to review full report at Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/15369?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/pandas-dev/pandas/pull/15369?src=pr&el=footer). Last update [1bcc10d...0b8d2ca](https://codecov.io/gh/pandas-dev/pandas/compare/1bcc10da51c61886362d9d4d4eeafe604ab288ea...0b8d2ca73ac9e4675522b374b0b57b99ec7c9afe?el=footer&src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments). merged this. cuts about 1 hr off of total time. https://travis-ci.org/jreback/pandas/builds/200891319

this is using -n 2; -n 4 helps when you actually have that many cores, travis only has 2 (by default).