ikev1: Properly handle different proposal numbering schemes

While the examples in RFC 2408 show proposal numbers starting at 1 and
increasing by one for each subsequent proposal this is not mandatory.
Actually, IKEv1 proposals may start at any number, the only requirement
is that the proposal numbers increase monotonically they don't have to
do so consecutively.

Most implementations follow the examples and start numbering at 1 (charon,
racoon, Shrew, Cisco, Windows XP, FRITZ!Box) but pluto was one of the
implementations that started with 0 and there might be others out there.

The previous assumption that implementations always start numbering proposals
at 0 caused problems with clients that start numbering with 1 and whose first
proposal consists of multiple protocols (e.g. ESP+IPComp).

Fixes #661.
ikev1: Skip unusable IPComp proposals

Fixes #661.
ikev1: Log IV when encrypting messages
ikev1: Don't cache last block of INFORMATIONAL messages as IV

We don't expect a response with the same MID, but apparently some
devices (e.g. FRITZ!Box) do that for DPDs, while still treating the
response as a new exchange.  By storing the last message block as IV
we can't decrypt the first block of such a response.

Fixes #661.
library: Store the used root strongswan.conf configuration
settings: Use strongswan.conf used during library initialization for reload

Since 4b670a20 we require an explicit strongswan.conf to re-load configurations.
However, the define was missing in the build, breaking SIGHUP based config
reloading.

Fixes #651.
settings: Make loading a NULL or empty pattern a (nop-)success
vici: Add a command to reload strongswan.conf
swanctl: Add a --reload-settings command
swanctl: Add a --load-all command, performing --load-{creds,pools,conns}
swanctl: Fix description of load-pools command summary
swanctl: Complete --load-creds command summary
systemd: Provide a charon-systemd daemon targeting full systemd integration
plugin-loader: Support a reload() callback for static features
systemd: Add a native systemd journal logger
systemd: Discover and check systemd libraries with pkg-config during configure
systemd: Check if ./configure detected a systemd system unit directory
init: Provide a service file for charon-systemd using swanctl
init: Update starter systemd service to distinguish it from strongswan-swanctl
man: Skip installation of ipsec.conf/secrets manpages when not building starter