REF: ensure O(N log N) when using fft for acf

The numpy implementation will fall back to a O(N**2) version of the fft
in cases where it cannot factorize the array length, which can be a
increase in runtime of several order of magnitude. This uses the
_next_regular function from scipy to ensure that we always use array
lengths for which fftpack is optimized.
TST: add test for _next_regular

also copy the test for _next_regular from scipy
MAINT: Use ip_directive shipped with IPython. Closes #1428.
DOC: Make optional IPython dependency explicit
Merge pull request #1429 from jseabold/import-ipython-directive

MAINT: Use ip_directive shipped with IPython
DOC: Add default for getenv. Fix paths. Add print_info
Merge pull request #1431 from jseabold/fix-docs-build

DOC: Add default for getenv. Fix paths. Add print_info
DOC: Follow symlinks for anacron. Add logging.
STY: Pep-8 and remove unused variables.
DOC: Redirect all stdout and stderr.
Merge pull request #1436 from statsmodels/fix-tools-docs

DOC: Fix auto doc builds.
ENH: accept non-int definitions of cluster groups
ENH: Option to avoid "center" environment.
ENH: use np.unique for indexing clusters
STY: Cleanup code.
DOC: Fix indexing bug. Fix plot.
DOC: Fix bad namespace.
STY: Make output cleaner. Cleanup plotting.
DOC: Make plots bigger.
DOC: Cleanup plotting