Support and tests for adding a reset button to units

@jbau @jrbl  to review please

Decouples reset from randomization while still preserving backward compatibility. Users will be able to effectively clear their input for answere questions that they have not submitted and instructors are able to set course-wide and problem-specific settings.

Implementation is in common/lib/xmodule/xmodule/capa_base.py  
Refactored out common constants in common/lib/xmodule/xmodule/capa_base_constants.py
Unit tests in common/lib/xmodule/xmodule/tests/test_capa_module.py
UI acceptance tests in common/test/acceptance/tests/test_problem_reset.py 
Can reply in a comment and expand on this a bit? I'm not familiar with the conventions of capa.

Is this some convention of PageObject's that is_browser_on_page needs to be defined? And if some PageObject's can be invoked when the browser isn't on their page, how can you be confident that the browser is always on this PageObject?