First pass at creating a new extract-strings.py script for our i18n efforts.

Summary:
This is a simple script that's able to extract strings from the Khan Exercises .html files and generate a .po file.

I haven't evaluated how accurate the results are yet - and I've found at least one major issue which I'll resolve tomorrow, namely that elements inside of banned elements (like `<code>`) are still being picked up.

Test Plan: Run `python build/extract-strings.py`. You should end up with a file named `exercises.po` containing a number of translatable strings.

Reviewers: csilvers

Maniphest Tasks: T340

Differential Revision: http://phabricator.khanacademy.org/D1058
Rewrite of extract-strings to be easier to use and integrate feedback from Craig and Alpert.
Fix some linting issues.
Fix line spacing for lint.
Add in a new extract_strings_test.py file for testing string extraction. Fix a new bugs in extract_string.py, as well.
Fix linting issues.
Fixed a number of style issues, as suggested by @csilvers. Added # of extracted strings count at end of run. Made sure that the tests will run from any directory.
Fix indentation issue.
Don't extract the regex type from exercises. Add in a script to help generate the test files for extract_strings_test.py.
Fix malformed and un-wrapped text in exercises to keep graphie blocks from entering in to translations.
Fix a couple cases where I put a paragraph in a paragraph by mistake.
Fix some typos and make sure that there are no divs captured by the string extractor.
Add in a unit test to make sure that no div elements are found in extracted strings.
Fix lint issue.
Fix issues with extraneous paragraphs in extracted strings.
Fix extract_strings_test so that the chdir is taken care of in setUp/tearDown, instead of occurring globally.
Fix paragraph wrapping.
Merge branch 'master' of github.com:Khan/khan-exercises into i18n-extract