Command Timeout Code

Re-purpous and rename the timeout value on Mediator to track the backend's statement_timeout setting.
Remove that tracking value from Connector.
Rename Connector.CommandTimeout to DefaultCommandTimeout, which is really what it is.
Factor statement_timeout set code into its own function on Connector.
Remove a bunch of spots that constantly set/reset Mediator.Timeout.
Give the timeout tests a little more breathing room since they were failing intermitently.
Add timeout tests to make sure timeouts don't happen too soon.
NpgsqlException

Lighten NpgsqlException slightly by using NpgsqlError[] instead of IList.
Improve type safety by using IList<NpgsqlError> instead of the non-generic version.