Avoid unexpected errors when connecting to the DB.

For Oracle and Postgres, setting the search path or current schema when the
schema does not exist should throw an error. It doesn't for me, but does
sometimes for others. In any event, I think it's a bug that it doesn't, and
have reported it to the DBI developers. So just always catch and ignore an
exception when setting the schema/search path fails. This should allow the
code that checks for a missing table error to kick in and trigger the creation
of the schema.
Try harder to check for an uninitialized database.

Was just relying on the "changes" table missing. But what if the current
database or schema is not Sqitch's, and has its own, unrelated table named
"changes"? So call `unititialized` to ask the engine if it really thinks it's
uninitialized to try to avoid that pitfall.
Query for the actual schema on Oracle.

Rather than rely on the session, since `SET CURRENT_SCHEMA` might have failed
and the current schema might have an unrelated "changes" table in it.
Ignore search path errors inside callback.

Have to set the error to `undef` rather than rely on an exception caught by
`try {}` because this is an "internal" execution path for the DBI. v1.630 will
properly notice that there was an error, but will only do something about it
once the callback has finished executing, which means after we're outside
of the scope of the `try {}`. Details here:

  http://www.nntp.perl.org/group/perl.dbi.dev/2013/11/msg7622.html

The workaround is to simply set the error to `undef`, if it exists, and it
then not be noticed by the DBI calling code. I'm leaving in the `try {}` block
for future-proofing; I'm hoping that callbacks will be turned into proper
"outer" contexts where an exception would actually be thrown. So this code
should cover versions where no exception is ever thrown (v1.629 and lower),
versions where an exception is thrown by the calling code (v1.630), and
potential future code where the exception will be thrown inside the callback.
Typos in sqitch-add doc
Add a coercible ConfigBool attribute type

Coercible values include those understood by App::Sqitch::Config (via
Config::GitLike).  This is useful when attributes are set directly and
automatically from config values without casting to a Perl boolean (such
as those provided by get_section).

Note that for coercion to apply to an attribute, the attribute must
specify coerce => 1 as well.  Simply specifying isa => 'ConfigBool' is
not enough.
Optionally open change scripts in editor after add/rework

Supported via --open-editor or --edit and the {add,rework}.open_editor
config setting.
Add a -e alias for --edit
Pick up add.open_editor in rework if set
Test --open-editor for add and rework
Prevent SQITCH_EDITOR from overriding localized EDITOR and causing test failures
Merge branch 'tsibley-open-editor'
Credit tsibley for --open.
I kant spel.
Pass the correct number of args to set_err().
Update translation files.
Timestamp v0.983.
Increment to v0.984.
Dist::Zilla 5 is in the wild, now.
Fixed typos