Add modification_detection plugin, for automatic detection of in-place column value modifications

This is a simple if fairly slow way to reliably detect in-place
column value modifications.  Well, it's reliable if the objects
themselves implement #hash correctly, but if they don't then
those objects should be fixed.

ActiveRecord is going to be doing something similar in the future
by default.  I don't think it's a good idea to force a slowdown
on all users just because some users may modify values in
place, so it will remain a plugin in Sequel.  Users who care
about performance should continue using the existing
modified!(:column) method to manually mark column values as
changed when changing them in-place.