Show error message when trying to share programs with disallowed text

Don't let shared programs contain (1) swear words, (2) phone numbers, (3) street addresses or (4) email addresses.

Adds webpurify key to secrets file. May be changed before going to production.

Also includes a few cleanups:
- Rename LevelSource.lookup to LevelSource.find_identical_or_create, removing comments about name
- Add with_test_locale helper, use for notes test

![screen shot 2014-10-01 at 10 11 29 am](https://cloud.githubusercontent.com/assets/206973/4479603/d55d635a-498f-11e4-8879-a08408de9f6e.png)
![screen shot 2014-10-01 at 10 11 16 am](https://cloud.githubusercontent.com/assets/206973/4479606/d57eb082-498f-11e4-8dd9-64af735c3920.png)
![screen shot 2014-10-01 at 10 10 55 am](https://cloud.githubusercontent.com/assets/206973/4479604/d55e9054-498f-11e4-80aa-b5af523b354e.png)
![screen shot 2014-10-01 at 10 10 27 am](https://cloud.githubusercontent.com/assets/206973/4479605/d5666248-498f-11e4-80e8-9f8d1fc575cc.png)

Might make more sense to check hadShareFailure down on line 33 (of the new file), rather than changing the passed in options object.