Skip prepared statement usage in some additional cases in the prepared_statements_associations plugin

If the associated class has a filtered dataset, then unbinding it
may produce a prepared statement with a mismatched number of
placeholders, leading to in incorrect query.

Note that it is probably possible to handle such cases with
prepared statements, by comparing the unbound variables to the
association variables.
Use prepared statements when the association has :conditions in the prepared_statements_associations plugin

This tweaks the previous commit to compare the unbound variables
to the association variables, and bind any that are missing.  This
should allow safe prepared statement usage for associations with
conditions.

Note that this only works because conditions should not be able
to contain instance-specific code.  You can use a proc for conditions,
but then it is a virtual row block and doesn't have access to the
dataset.  Both the block form and the :dataset option allow for
instance-specific code, so prepared statements should not be used
for either of them.
Prepare one_to_one associations in the prepared_statements_associations plugin

I'm not sure why these were skipped when the plugin was originally
developed, but support is fairly trivial to add.