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.
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
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()
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
Removed some unnecessary imports.
updated CHANGELOG.rst
Merge remote-tracking branch 'origin/release' into rc/2013-06-26
Make the problem handle empty fields and non-integers correctly.
Catch InvalidLocationError