Tests for Nonetype save bug
Modify `save` to correctly test whether a field is in _model_data or not.
Prevent mutable fields from incorrectly becoming dirty.

Fixes a bug in Studio by allowing us to reliably tell whether or not a
field has been explicitly set. Previously, because accessing a mutable
field marked it dirty, it was impossible to tell if a field was
actually modified by a course author.
Merge pull request #58 from edx/sarina/save-Nonetype-bug

Sarina/save nonetype bug
Reword comment.
Merge pull request #57 from edx/peter-fogg/model-data-bug

Prevent mutable fields from incorrectly becoming dirty.
Update AUTHORS file
Merge pull request #60 from edx/sarina/add-authors

Update AUTHORS file
Upgrade diff-cover to newest version
Merge pull request #61 from edx/sarina/upgrade-diffcover

Upgrade diff-cover to newest version
Fix problem submission to work with bulk saves

The input types weren't being saved, so the checker would make a new
block with the same ids expecting to find the values in the db, but they
hadn't been saved yet.  Problem now has an implicit save after the
submit call, just as handlers and views do.

Also changed the student_input field to Any, since it can store
non-string values due to its own type conversion.
Make XBlock.__repr__ more bullet-proof

When something goes wrong in a field, it will raise an error when trying
to produce the repr of the block, which wreaks havoc with debuggers,
etc.  A try/catch makes the repr impervious to such infelicities.
Fix pep8 and pylint violations
Merge pull request #62 from edx/ned/fix-problem-submission

Ned/fix problem submission
Change the interface of DbModel to more closely match KeyValueStore

This means we don't have to support all of the methods in dicts without
when we don't have the same support for those methods in the underlying
storage.

[LMS-826]
Merge pull request #59 from cpennington/non-dictionary-dbmodel

Change the interface of DbModel to more closely match KeyValueStore