Use simplecov instead of rcov for coverage testing on 1.9+

Rcov never worked well on 1.9, and the latest version doesn't
support 1.9+ at all.  SimpleCov uses ruby 1.9+'s native coverage
library, and appears to work well.
Allow the :pool_timeout option to be a float

Before, only an integer was allowed.  This is mostly useful for
testing purposes, since I don't want to have to sleep for a
second to test the related code.
Add some specs for increased coverage
Add :nocov: markers to skip ruby version/engine specific code

SimpleCov makes it possible to eliminate known false positives
in the coverage testing by marking branches not taken due to
the specific version/engine used.  This takes advantage of
that so that it doesn't show files as uncovered just because
they have 1.8 or jruby/rbx specific code.
Load the ActiveSupport blank extension first when running extension tests

This allows the Sequel blank extension to just overwrite the AS
changes, allowing the code to actually be tested.
Add some extension/plugins specs for better coverage
Remove unused and broken date_add_sql from date_add extension
Minor refactoring to validation_class_methods

The validation_if_proc method is never passed nil, since
validates_each does not call it if the value is nil. Other changes
are just style-related.
Add :nocov: markers for extensions/plugins