Reorganize requirements files

Turns out that mixing test requirements with the other requirements caused the edx-platform tests to fail in a really bizarre way :)  This PR reorganizes the requirements files:

1) `pre-requirements.txt`: Installs numpy, which cannot be installed in the same `pip install` call as scipy.
2) `requirements.txt`: All requirements, including the ones that take a long time to compile from source (scipy/numpy, etc.)
3) `base-requirements.txt`: Subset of requirements that install quickly; in Travis, use pre-compiled binaries instead for the ones that are missing.
4) `dev-requirements.txt` Test and doc requirements.

@singingwolfboy