refactored tests in courseware to draw course info from mongo instead of xmlmodulestore
Refactoring the code in tests.py to remove unnecessary dependencies on the XML Modulestore.
Merge branch 'master' into jnater/playground

Conflicts:
	common/lib/xmodule/xmodule/modulestore/tests/factories.py
	lms/djangoapps/courseware/tests/tests.py
Refactored some of the classes in tests.py to not unnecessarily depend on the XML modulestore.

Conflicts:
	lms/djangoapps/courseware/tests/test_navigation.py
	lms/djangoapps/courseware/tests/test_view_authentication.py
	lms/djangoapps/courseware/tests/tests.py
Removed a unnecessary imports from mongo_login_helpers.py and repeated code from tests.py.
Initialize MakoMiddleware manually during certificate grading runs.

Without this, problems fail to load because they can't find how to
render themselves, and the certificate generation grading run will
get an inaccurately low count of the possible points a user could
get (anything they didn't see will be omitted), inflating their
grade during certificate calculation and making it inconsistent
with their Progress page.
JSinput input type
Add sphinx documentation for jsinput
Remove obnoxious pip file
Merge pull request #206 from edx/rc/2013-06-18

Rc/2013 06 18
Addressed pull request feedback.
Merge branch 'master' into jnater/courseware_tests

Conflicts:
	lms/djangoapps/open_ended_grading/tests.py
Merge branch 'master' into feature/jkarni/jsinput

Conflicts:
	doc/public/index.rst
In the middle of addressing pull request comments. This is a safety commit in case I have to revert some changes I'm about to make.
Removed the use of random.choice()
Abort submission and alter user if gradefn throws an exception
Removed run_wrapped() and replaced its functionality with patch.dict():
Updated a doc string.
Removed some unused functions.
Merge branch 'master' into jnater/courseware_tests