BUG: ewm*() interpretation of min_periods is off by one
Closes https://github.com/pydata/pandas/issues/7884.

This addresses only the `ewm*()` functions' off-by-one interpretation of `min_periods`.
It doesn't address the inconsistency between the `ewm*()` functions and the `rolling_*()` functions in the meaning of `min_periods`.

are there test for min_periods 1 and 0?
if not can u add pls 

thxs
 OK, will add tests for min_periods 0 and 1.
 In the process of adding tests for min_periods = 0, 1, I noticed the following, which is really messing up the testing. I think all these functions should return `NaN` for a single value.

I just noticed that `ewmvar`, `ewmstd`, `ewmvol`, `ewmcov`, `rolling_var`, `rolling_std`, returns `0.0` for a single value (assuming `min_periods=0`); whereas `Series.std`, `Series.var`, `ewmcorr`, `expanding_cov`, `expanding_corr`, `expanding_std`, `expanding_vol`, and `expanding_var`, `rolling_cov`, and `rolling_corr` all return `NaN` for a single value.
 I've updated the code to add tests for min_periods = 0, 1, 2, leaving the single-value behavior noted above unchanged. If want to, can address that in a separate issue/PR: https://github.com/pydata/pandas/issues/7900.
 The Travis CI build passed.
 thanks!
