vm: Try harder to allocate early physical pages.

* On UEFI, pages are allocated top-down; previously,
  VM would fail to allocate early pages due to
  running into pages allocated at the top and
  assume it had run out of pages to map.

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>
Debugger: ThreadHandler cleanups.

- Ask the architecture for a stack trace directly, as we only
  need the top frame.
- Properly update thread state before we go into condition
  evaluation. Otherwise, other parts of the debugger potentially
  wouldn't notice that we had continued execution in the case
  where the condition evaluates to false, and would indicate a
  program stop at the breakpoint erroneously.
Debugger: MarkerView tweaks.

- Draw conditional breakpoints in a different color from regular
  ones for easy visual differentiation.
- Right clicking on an existing breakpoint marker now brings up the
  condition editing window.