CP-6172: Separate Blktap2 and Blktap3 in XenStore

Note: this change is co-dependent on a change in xapi.

The Vbd device type has been augmented to take a backend kind. This is either
Blktap2 (default) or Blktap3 and is chosen based on the "backend-kind" key in
the extra_backend_keys in the VBD metadata.

Signed-off-by: Si Beaumont <simon.beaumont@citrix.com>
CP-6172: Use strings as backend_kind type

Responding to comments from review, would be better for this type to be
a string and therefore not as 'baked-in' for greater flexibility.

Signed-off-by: Si Beaumont <simon.beaumont@citrix.com>