Bump API version to 2.4

Signed-off-by: John Else <john.else@citrix.com>
Bump API version number on API docs

Signed-off-by: John Else <john.else@citrix.com>
CP-9795: Use ip tool instead of ifconfig

The output of ifconfig varies by version so rather parse the output
of the ip tool.

Signed-off-by: Ross Lagerwall <ross.lagerwall@citrix.com>
CA-153341: Use local force_state_reset after cross-pool SXM

This fixes cross-pool SXM from a slave. VM.power_state_reset gets
forwarded to the master, which then sees that the VM still appears to be
running on the alive slave, and raises HOST_IS_LIVE.

Calling force_state_reset directly bypasses this check.

Signed-off-by: John Else <john.else@citrix.com>
Merge pull request #2050 from johnelse/ca-153341

CA-153341: Use local force_state_reset after cross-pool SXM
Merge pull request #2044 from rosslagerwall/ifconfig-output

CP-9795: Use ip tool instead of ifconfig
Merge pull request #2036 from johnelse/api-version-bump

API version bump
CA-152343: Start SMAPIv1 proxies later in the startup sequence

On a slave this requires making a DB call to the master to find out
which SM objects exist, so this needs to be done after starting HA (if
applicable) and setting up the database connection to the master.

Signed-off-by: John Else <john.else@citrix.com>
Merge pull request #2056 from johnelse/ca-152343

CA-152343: Start SMAPIv1 proxies later in the startup sequence
import_raw_vdi: Pass Content-Length to vhd-tool

This passes the `Content-Length` header to `vhd-tool serve` when using
raw non-chunked imports. This way clients don't need to manually pad out
the HTTP PUT with zeros, to fill it up to the next 2MB boundary.
Merge pull request #2063 from chengsun/fix-import-raw-vdi

import_raw_vdi: Pass Content-Length to vhd-tool