Remove unused private method in pg_json_ops
Allow prepared_statements plugin to work with instance_filters and update_primary_key plugins

Previously, it was documented that the plugins didn't work
together.  It makes sense that they can't, since prepared statements
require the same behavior for every call, and instance_filters
and update_primary_key plugins can have different behavior depending
on instance state.

However, it was annoying that they don't work together, since the
behavior is that things appear to work, but the instance_filters
or update_primary_key behavior is just ignored, since prepared
statements overrides methods at a higher level.

So the simplest fix is just to have prepared_statements plugin
not use a prepared statement and fallback to the default behavior
in that case.  Unfortunately, the only way I can think of to do
that reliably is to have a base instance method defined, and have
other plugins override it.  So that's basically what I did, adding
a method to Model::InstanceMethods inside the plugin, and having
other plugins override it.  This implementation means that it
doesn't matter in which order you load the plugins or where you
load them in the class hierarchy.