Don't deprecate reciprocals if current association has conditions/block

If the current association has conditions or a block, but the
reciprocal association does not, it should be safe to use
the reciprocal.  Only if the reciprocal association has a
condition or block should it not be safe. Example:

  Album.many_to_one :artist
  Artist.one_to_many :a_albums, :conditions=>{:name=>/^a/i},
    :class=>Album

Here, artist should not pick a_albums as a reciprocal, since the
album name may not start with "a".  However, a_albums should have
artist as the reciprocal, since any matching album should have
that artist.
Deprecate Dataset#graph_each and add graph_each extension

Dataset#graph_each was originally added as the backbone of
eager graphing.  However, after EagerGraphLoader was added,
it isn't really necessary.  It causes a performance hit to
all Dataset#each calls, since they need to check for graphs.
Deprecate sequel_core.rb and sequel_model.rb

These are the old library names, dating back to when sequel,
sequel_core, and sequel_model were 3 different gems.
Deprecate Sequel.virtual_row_instance_eval accessor

This has had no effect since Sequel 2.
Add Database#supports_{index_parsing,foreign_key_parsing,table_listing,view_listing}?

Currently, the only way to check for support is to call and
rescue NotImplemented.  Exceptions for flow control is not really
a great idea, so it's better to just check for support.  In
Sequel 4, the methods will just not be defined if they aren't
implemented, so these will become respond_to? checks.
Deprecate Sequel::NotImplemented and defining methods that raise it

If something isn't implemented, there should just not be a method
for it.  A default method that just raises an exception is a bad
idea.