python script for developer level testing 

#### Summary:

Changes developer level testing to use a Python script, `runTests.py`, instead of calling make directly.

#### Intended Effect:

- Developer testing procedure is simplified. 
- Build process is simplified: makefiles are much simpler.
- Python script is used to build and run the test executables.

Developers are now required to have Python 2.7 or greater.
New documentation at: https://github.com/stan-dev/stan/wiki/Testing-Stan-using-Gnu-Make-and-Python

#### How to Verify:

Run unit tests. 
- Single tests can be run by calling `./runTests.py <path to test file>`. For example, to run the unit test for `src/test/unit/math/functions/abs_test.cpp`, type `./runTests.py src/test/unit/math/functions/abs_test.cpp`.
- Folders can also be run. To run all tests within `src/test/unit/math`, type `./runTests.py src/test/unit/math`.

This alsow works on WINDOWS.

#### Side Effects:

No code changed. Just the testing procedure for developers.

Jenkins will need to change in order to continue to test.

#### Documentation:

See: https://github.com/stan-dev/stan/wiki/Testing-Stan-using-Gnu-Make-and-Python

#### Reviewer Suggestions:

Anyone.
Both Mitzi and I worked on this in detail, so I'm marking it as `code reviewed`. If anyone has objections, please feel free to unmark it.

I ran the tests on the Jenkins box and on the Mac on my desk.