Use Makefile to install requirements and run tests

* Add a Makefile for installing requirements and running tests.  The new commands are:
```
# Installs Python requirements
make install

# Runs the test suite
make test

# Install and run the tests
make
```

* Separate the test requirements from the base requirements.  When installing using `setup.py`, the test requirements will no longer be installed by default.  This is helpful for projects like ORA2, which need to use the XBlock SDK but aren't using requirements like Selenium.

@nedbat please review.
@pmitros why is "setup.py develop" better than "pip install -e ."?  I always thought they were equivalent?