refs #273: italicized text should be italicized.
Google drive integration using velruse
Handle the case where user declines to give access.
Show flash messages.
Slight refactoring for more easily fetching public documents without auth.
Fix ini file so it works out of the box.
First attempt a public import on document.
Add missing file to go with flash message css.
Protect against url insertion attack

An attacker could insert special characters into the document id in an attempt
to make us pass them to google. Not that he would gain anything, but it pays
to be careful.
Fix use case for URL import with google doc

If the url is recognised as a google doc url, attempt a public import.
Fix evil blanket except
use new etree returning call from r.cnxmlutils
Don't overwrite title if you cannot find one. Fixes #371.
When downloading public google docs, retain title.

For non-public docs, this info is in the json structures returned.
Move form parameter from __init__ to process on processors.

It makes more sense to pass form to the process() method. It allows you to
easily implement formless processing, as happens with google docs callback-type
deferred processing, because you can instantiate the processor without having
to fake a form.
make save_original_file a class method.
Create temporary directory when attributes accessed

This delays the creation of the tmp dir until it is actually needed. It avoids
creating more than one, which happened because we pre-created the temp
directory even before we fully knew how the import would proceed.
Get title directly from saved html

Don't attempt to get it from the transformed html.
Merge pull request #12 from oerpub/processor-cleanup

Processor cleanup
refs #390: there is no license link when editing an existing module since the user has already accepted the license.