Deferred breakpoints: support commands/conditions

Fixes a few things around deferred breakpoints:

1. `info bp` raised because deferred bps don't quack like a regular one
2. `cond` and `command` couldn't be set on deferred bps; this now stores them, and just installs them onto the real breakpoint once resolved
3. The real breakpoint replaces the deferred one, instead of adding a new entry.

Gist of before & after on a simple script: https://gist.github.com/pd/5b23e26dd5958bba8f02