Add support for updates via an OpenVPN status file

A status file in version 2 or 3 can now be parsed for the required
details of an update operation. Input by file or STDIN are supported.

This improves handling of Issue #2.
Use shared prepare calls for re-used SQL statements; better quoting

The SQL statements used by update() and match_session_id() are now
offloaded into prepare-functions. This allows the status_proc() code to
prepare multi-use statements once, and execute as many times as needed.

Additionally, even non-prepared statements now pass values as a
bind_values list. This implicitly takes care of quoting needs.
Delay DB connection for status_proc() until the first real data line

This avoids DB traffic when there are no active connections.
Move the DB commit operation closer to each high-level handler

This avoids some unnecessary manipulation for commit-handling previously
used to support status_proc().
Place common config and database vars in named hashes

This makes file-scoped options more easily identifiable.
Add usage output