target-arm: kvm - support for single step
target-arm: kvm - add support for HW assisted debug

This adds basic support for HW assisted debug. The ioctl interface to
KVM allows us to pass an implementation defined number of break and
watch point registers. When KVM_GUESTDBG_USE_HW_BP is specified these
debug registers will be installed in place on the world switch into the
guest.

The hardware is actually capable of more advanced matching but it's
unclear if this expressiveness is available via the gdbstub protocol.
However it wouldn't be hard to add at a later date.

---
Changes:
  - set more bits for bkpt
  - neater error_report
  - fetch debug capabilities
  - re-factor handle_debug
  - fixup deletion of breakpoints